8

我正在使用 knox 模块到https://github.com/LearnBoost/knox为 S3 上的文件创建签名 URL,这是我之前使用 PHP SDK 完成的。

我可以从我的存储桶中删除文件,但是当我尝试为具有私有 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'));

我究竟做错了什么?

4

1 回答 1

0

原来我错过了文件名上的前导“/”,现在签名匹配。

于 2012-02-12T22:24:07.557 回答