无法让node.js返回有效的签名PUT URL

 光头之祖_617 发布于 2023-01-31 13:56

我试图让我的头发试图让S3 Direct Client Side PUT操作起作用.

我们有一个版本的后端代码在Python上工作没有任何问题(所以我们知道前端工作正常)我们正在尝试将后端移植到Node.JS.

我有一个端点设置,它返回一个签名的PUT URL,这里是代码:

var objectKey = req.query.s3_object_name;
var objectType = req.query.s3_object_type;

var params = {
    Bucket: s3Bucket,
    Key: objectKey,
    // ContentType: objectType, //(I have tried with and without this)
    Expires: 60
};
s3.getSignedUrl('putObject', params, function(err, signedUrl){
    if(err){
        res.send(400);
    }else{
        res.end(JSON.stringify({
            signed_request: signedUrl,
            url: "http://"+s3Bucket+".s3.amazonaws.com/"+objectKey
        }));
    }
});

不幸的是亚马逊总是返回以下错误:

SignatureDoesNotMatch - 我们计算的请求签名与您提供的签名不匹配.检查您的密钥和签名方法.

有没有人成功获得JavaScript aws-sdk来成功执行此任务?有什么指针吗?我有两次和三次检查我的AWS Key和Secret.

问候:

John Chipps-Harding

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有