NODE NODE ERROR配置中缺少凭证,如果使用AWS_CONFIG_FILE,请设置AWS_SDK_LOAD_CONFIG = 1

问题描述

我正在使用multer上载图像,同时上载了显示错误的图像。我进行了很多搜索,但找不到解决方案。请给我建议一些博客或文档,以便我可以跟着他们了解这些东西

  var aws = require("aws-sdk"),multerS3 = require("multer-s3");
    s3 = new aws.S3({
      accessKeyId: process.env.ACCESS_KEY_ID,accessSecretKey: process.env.ACCESS_SECRET_KEY,region:process.env.REGION,Bucket: process.env.AWS_BUCKET_NAME,});
    var upload = multer({
      storage: multerS3({
        
        s3: s3,bucket: "******",Metadata: function (req,file,cb) {
          cb(null,{ fieldName: file.fieldname });
        },key: function (req,cb) {
          const uniqueSuffix =
            "myfile" + Date.Now() + "-" + Math.round(Math.random() * 1e9);
          cb(null,uniqueSuffix + file.originalname);
        },}),});

我的存储桶策略

    {
        "Version": "2012-10-17","Id": "Policy****","Statement": [
            {
                "Sid": "*****","Effect": "Allow","Principal": "*","Action": "s3:Getobject","Resource": [
                    "arn:aws:s3:::******/*","arn:aws:s3:::******"
                ]
            }
        ]
    }

    <?xml version="1.0" encoding="UTF-8"?>
    <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <AllowedMethod>POST</AllowedMethod>
        <AllowedMethod>PUT</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Authorization</AllowedHeader>
    </CORSRule>
    </CORSConfiguration>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)