Я хочу прекратить загрузку файла, а также удалить загруженные файлы из s3, нажав кнопку удаления. Код работает, но в консоли выводятся данные о том, что при удалении произошла ошибка net: err_failed.
Ниже приведен код,
handle_upload = () => {
this.upload(item.id);
}
upload = () => {
AWS.config.update({
region: upload_definition.upload.region,
accessKeyId: upload_definition.upload.credentials.access_key_id,
secretAccessKey: upload_definition.upload.credentials.secret_access_key,
sessionToken: upload_definition.upload.credentials.session_token,
});
const upload = new S3.ManagedUpload({
params: {
Bucket: upload_definition.upload.bucket_name,
Key: upload_definition.upload.prefix + file.name,
Body: file,
leavePartsOnError: true,
},
});
this.upload.on('httpUploadProgress', function (some_var) {
/*some content*/
});
try {
await this.upload.promise();
} catch (error) {
this.setState({failed: true});
return;
}
}
handle_delete = () => {
delete_item();//my api to delete the item
}
render = () => {
return (
<button onclick={this.handle_delete}>Delete</button>
)
}
Я не уверен, как удалить файлы из s3 после загрузки ... при нажатии кнопки удаления в handle_delete я вызываю api, чтобы удалить элемент. Думал прервать закачку и при прерывании звонил удалить версию.
Пробовал что-то вроде ниже и не работает. Может ли кто-нибудь помочь мне исправить это. спасибо.
handle_upload = () => {
this.upload(item.id);
}
upload = () => {
AWS.config.update({
region: upload_definition.upload.region,
accessKeyId: upload_definition.upload.credentials.access_key_id,
secretAccessKey: upload_definition.upload.credentials.secret_access_key,
sessionToken: upload_definition.upload.credentials.session_token,
});
this.upload = new S3.ManagedUpload({
params: {
Bucket: upload_definition.upload.bucket_name,
Key: upload_definition.upload.prefix + file.name,
Body: file,
leavePartsOnError: true,
},
});
this.upload.on('httpUploadProgress', function (some_var) {
/*somecontent*/
});
try {
await this.upload.promise();
} catch (error) {
this.setState({failed: true});
return;
}
}
handle_delete = async() => {
await this.upload.abort();
delete_item();//my api to delete the item
}
Как я могу удалить загруженные файлы на s3 с веб-интерфейса ... спасибо.