0

我正在创建签名以从销售人员的亚马逊 S3 获取文件。我得到以下错误

我们计算的请求签名与您提供的签名不匹配。检查您的密钥和签名方法。我正在使用下面的代码

Blob signatureBlob = Crypto.generateMac('hmacSHA1', Blob.valueOf('MY Secrate Code') ,Blob.valueOf(('GET\n\n\n'+Datetime.now().addminutes(2).getTime()/1000+'\n/bucketname/sfaccounts/BillPayment.pdf')));
String signatureString = EncodingUtil.Base64Encode(signatureBlob);
signatureString  = EncodingUtil.urlEncode(signatureString , 'UTF-8');
PageReference pg = new PageReference('https://bucketname.s3.amazonaws.com/sfaccounts/BillPayment.pdf?AWSAccessKeyId=accessID&Expires='+Datetime.now().addminutes(2).getTime()/1000+'&Signature=' + signatureString);
return pg;

谁能帮我?

4

0 回答 0