我最近构建了一项服务,使用FileTransfer - Cordova将文件直接上传到S3,使用Cloudfront - SignedUrl。 一切都很好,我得到以下回应:
{"BytesSent": -numOfBytes-, "responseCode": 200, "objectId":""}
但我无法访问此文件 - 无法读取,更改,下载失败。可能文件已损坏,很奇怪。 上传代码 -
let uri = data['signed_request'];
const ft: TransferObject = this.transfer.create();
let options : FileUploadOptions = {
fileKey: "file",
fileName: fileName,
mimeType: self.settings[kind].type,
chunkedMode: false,
httpMethod: 'PUT',
headers: {
'Content-Type': self.settings[kind].type,
'X-Amz-Acl': 'public-read'
}
}
ft.onProgress = function(progressEvent) {
if (progressEvent.length) {
} else {
}
};
ft.upload(file, uri, options, true).then((data) => {
resolve(data['readURL']);
}).catch((err) => {
resolve("Could not upload file. => " + err);
});
您认为可能出错? - 我看不出任何合理的理由,并坚持这么久...... 感谢