Как получить объект запроса из s3.upload () - PullRequest
0 голосов
/ 08 апреля 2020

Моя функция успешно загружает объект. Но проблема с ответом.

const params = {
  Bucket: "AWS_BUCKET", 
  Key: "filename"
};
const ptObj =  s3.putObject(params);
getObj.
  on('success', function(response: any) {
    resolve(response.httpResponse.stream);    
  }).
  on('error', function(error: any) {
    reject(error);
  }).
  on('complete', function(response: any) {
    console.log("complete");
  }).
  send();

Здесь я получаю IncomingMessage как результат (Мой желаемый вывод). Теперь я должен загрузить поток. Итак, я должен использовать s3.upload(). Но для загрузки я получаю ошибку как Argument of type '"success"' is not assignable to parameter of type '"httpUploadProgress"'.

const uploadStream =  s3.upload(params);
uploadStream.
  on('success', function(response: any) {
    resolve(response.httpResponse.stream);    
  }).
  on('error', function(error: any) {
    reject(error);
  }).
  on('complete', function(response: any) {
    console.log("complete");
  }).
  send();

Я пытался httpUploadProgress, но это не дает требуемого вывода. Как получить объект IncomingMessage в качестве вывода здесь

    s3.upload(params)
    .on('httpUploadProgress', function(evt: any) {
    console.log("Uploaded :: ", evt);
    }).send(function(err: any, data: any) {
    console.log(err);
    console.log("File uploaded successfully.");
    console.log(data);
    });

Я использовал эти ссылки в качестве ссылки.

https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Request.html

https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3/ManagedUpload.html

...