如何解决尝试从s3删除图像时获取403禁止
我正在使用此库react-s3在S3上上传图像并从S3删除。上传图片工作正常,但是当我尝试从s3中删除文件时,但是每当我尝试删除时,我都收到403。 我在删除函数中传递了以下URL:
https://abc-profile-images.s3.amazonaws.com/1601273978.331.jpeg
但是在catch块中,我收到了以下URL(为什么它同时包含有区域和无区域的URL)
https://abc-profile-images.s3-ap-southeast-1.amazonaws.com/https://abc-profile-images.s3.amazonaws.com/1601273978.331.jpeg
以下是在catch中收到的对象:
Response {type: "cors",url: "https://abc-profile-images.s3-ap-southeast-1.am…ages.s3.amazonaws.com/1601273978.331.jpeg",redirected: false,status: 403,ok: false,…}
body: (...)
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 403
statusText: "Forbidden"
type: "cors"
url: "https://abc-profile-images.s3-ap-southeast-1.amazonaws.com/https://abc-profile-images.s3.amazonaws.com/1601273978.331.jpeg"
__proto__: Response
以下是我的代码:
import { deleteFile } from "react-s3";
import config from './s3config';
const options = {
accessKeyId: config.ID,secretAccessKey: config.key,region: config.region,bucketName: config.name
}
const removeImage = (uri) => {
console.log('file : ',uri)
return new Promise((resolve,reject) => {
deleteFile(uri,options)
.then(result => resolve(result))
.catch(err => reject(err))
})
}
export {
removeImage
};
import { removeImage } from '../../common/imageDelete'
function MethodList(props) {
const removeMethod = (e,page) => {
let image = e.target.dataset.image;
removeImage(image)
.then(res => console.log('s3 delete result : ',res))
.catch(res => console.log('Image catch',res))
}
}
export default MethodList
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。