2
我试图允许从预先登记的URL访问资产,但我不确定如何执行此操作。从this page我可以看到我需要以下条件:使用Javascript AWS SDK生成预先签名的S3 URL
Authorization = "AWS" + " " + AWSAccessKeyId + ":" + Signature; Signature = Base64(HMAC-SHA1(YourSecretAccessKeyID, UTF-8-Encoding-Of(StringToSign))); StringToSign = HTTP-Verb + "\n" + Content-MD5 + "\n" + Content-Type + "\n" + Date + "\n" + CanonicalizedAmzHeaders + CanonicalizedResource; CanonicalizedResource = [ "/" + Bucket ] + <HTTP-Request-URI, from the protocol name up to the query string> + [ subresource, if present. For example "?acl", "?location", "?logging", or "?torrent"]; CanonicalizedAmzHeaders = <described below>
我知道如何找到AWSAccessKeyId
和YourSecretAccessKeyID
,但它使用HMAC-SHA1
,以形成最终的签名我怎么编码?
这个伪无关生成使用JavaScript SDK签署的网址。那是你想要做的吗? –
是的,我认为这是你如何生成它 –
看来你可以这样生成它: 's3.getSignedUrl('getObject',params,function(err,url){ console.log(“URL是“,url); });' 但是这是下载文件,我只需要能够在浏览器中显示它 –