我的函数已成功上传对象。但是问题出在响应上。
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