我正在使用 knox 模块来 https://github.com/LearnBoost/knox为 S3 上的文件创建签名 URL,这是我之前使用 PHP SDK 完成的。
我可以从我的存储桶中删除文件,但是当我尝试为具有私有(private) ACL 的文件生成 URL 时,我收到 SignatureDoesNotMatch 错误。
代码是这样的
var knox = require('knox');
var s3Client = knox.createClient({
key: '*****',
secret: '*****',
bucket: '*****'
});
function getS3Url(filename) {
var expires = new Date();
expires.setMinutes(expires.getMinutes() + 30);
return s3Client.signedUrl(filename, expires);
}
console.log(getS3Url('file.txt'));
我做错了什么?
最佳答案
原来我在文件名中缺少前导“/”,现在签名匹配。
关于node.js - 在 node.js 中创建 S3 签名 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6447202/