Node.js 我在尝试使用preSignedUrl将图像上载到aws s3 bucket时遇到400个错误请求。出什么事了?

Node.js 我在尝试使用preSignedUrl将图像上载到aws s3 bucket时遇到400个错误请求。出什么事了?,node.js,amazon-web-services,amazon-s3,aws-sdk-nodejs,Node.js,Amazon Web Services,Amazon S3,Aws Sdk Nodejs,我在后端使用我的bucket和nodejs的IAM配置。我整晚都在寻找解决办法。但是找不到答案 这是aws上用户的我的策略配置: { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "A

我在后端使用我的bucket和nodejs的IAM配置。我整晚都在寻找解决办法。但是找不到答案

这是aws上用户的我的策略配置:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:GetAccessPoint",
                "s3:PutAccountPublicAccessBlock",
                "s3:GetAccountPublicAccessBlock",
                "s3:ListAllMyBuckets",
                "s3:ListAccessPoints",
                "s3:ListJobs",
                "s3:CreateJob"
            ],
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::my-first-bucket-stephengr/*",
                "arn:aws:s3:::my-first-bucket-stephengr",
                "arn:aws:s3:*:041892289571:accesspoint/*",
                "arn:aws:s3:*:041892289571:job/*"
            ]
        }
    ]
}
后端代码: app.get(“/api/upload”),需要登录,函数(req,res){

})

前端代码: 异步函数handleSubmit(e){ e、 预防默认值()


错误是由区域引起的。在后端添加区域属性修复了该问题:

    var s3 = new AWS.S3({
    accessKeyId: process.env.ACCESS_KEY_ID,
    secretAccessKey: process.env.SECRET_ACCESS_KEY,
    region: "ap-south-1"
    })

如何上传?有详细信息吗?我的问题中包含了代码?有人帮忙吗?
    var res = await axios.get("/api/upload", {headers: authHeader()});

    try{
    
        await axios.put(res.data.url, file, {headers: {ContentType: file.type}})

    }catch(err){
        console.log(err)
    }

    console.log(res.data);
}
    var s3 = new AWS.S3({
    accessKeyId: process.env.ACCESS_KEY_ID,
    secretAccessKey: process.env.SECRET_ACCESS_KEY,
    region: "ap-south-1"
    })