Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用节点生成预签名url的代码有什么问题?_Node.js_Aws Sdk - Fatal编程技术网

Node.js 使用节点生成预签名url的代码有什么问题?

Node.js 使用节点生成预签名url的代码有什么问题?,node.js,aws-sdk,Node.js,Aws Sdk,使用此api生成的预签名url有问题。 当我使用邮递员上传图像时,它显示错误 “我们计算的请求签名与您提供的签名不匹配。请检查您的密钥和签名方法。” 我的代码有什么问题 const _ = require('lodash'), statusCode = require('../../../lib/statusCode'), AWS = require('aws-sdk'), config = require('config'); AWS.config.update({ accessKeyId:

使用此api生成的预签名url有问题。 当我使用邮递员上传图像时,它显示错误

“我们计算的请求签名与您提供的签名不匹配。请检查您的密钥和签名方法。” 我的代码有什么问题

const _ = require('lodash'),
statusCode = require('../../../lib/statusCode'),
AWS = require('aws-sdk'),
config = require('config');
AWS.config.update({ accessKeyId: config.get('AWS.accessKeyId'), 
secretAccessKey: config.get('AWS.secretAccessKey') });

const s3 = new AWS.S3();

class Queries {

static async imageUpload() {

    // var s3 = new AWS.S3(); 
    try {
        const params = { Bucket: 'firelabs', Key: 'jpegsystems- 
  home.jpg' , ACL: 'bucket-owner-full-control', 
    ContentType:'image/jpeg' };
        const url = await s3.getSignedUrl('putObject', params);
        console.log(url);
        return url;
    }
    catch (e) {
        throw e;
    }
}
}
   module.exports = Queries;

您没有更新AWS的密钥。请参见代码的第4行和第5行。您只是从配置中获取密钥,但未对iti执行任何操作。我通过在AWS.update函数中使用config.get('---')来获取密钥。我明白了。我的错。您应该在第6行缩进代码。因此,很容易阅读您没有更新AWS的密钥。请参阅代码第4行和第5行。您只是从配置中获取密钥,而没有对iti执行任何操作。我通过在AWS.update函数中使用config.get('----)获取密钥。我明白了。我的错。您应该在第6行缩进代码。所以它很容易阅读