Загрузите объект в AWS S3 с подписанным URL-адресом

#php #ajax #amazon-s3 #aws-api-gateway #put

Вопрос:

Я хотел бы загружать большие файлы через dropzone в корзину s3.

Я получаю URL-адрес с предустановкой через RESTful api (putObject с предустановленным URL-адресом) в функции Ajax.

Код функции PHP ajax :

 $API_url = api_url;
$IdToken = $this->cognitoClient->getTokenIdCookie();
$curl = curl_init();
curl_setopt_array(
    $curl, 
    array(
        CURLOPT_URL => $API_url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => '',
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 0,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => 'GET',
        CURLOPT_HTTPHEADER => array(
            'Authorization: '.$IdToken
        ),
    )
);
$response = curl_exec($curl);
curl_close($curl);
$response_data = json_decode($response);
$presigned_url= $response_data->url;
return $this->json(
    array(
        "presigned_url"=>$presigned_url
    )
);
 

Я хотел бы использовать этот URL-адрес под председательством, чтобы загрузить объект из нескольких частей и следить за его ходом.

Я уже рассматривал функцию «загрузить» в javascript, но я не знаю, как использовать URL-адрес с подписью с этим

Комментарии:

1. Код функции PHP ajax : вы пытаетесь запустить его под $.ajax ?

2. код, который я отправил, находится в функции php, которая выполняется под $.ajax