我试图从 Amazon S3 上的存储桶下载文件。我想知道我是否可以编写一个 javascript 来从存储桶中下载这样的文件。我在谷歌上搜索它,但找不到任何可以帮助我做到这一点的资源。
要记住的一些步骤是:验证 Amazon S3,然后通过提供存储桶名称和文件(密钥),下载或读取文件,以便我能够显示文件中的数据。
谢谢,
原文由 c0mrade 发布,翻译遵循 CC BY-SA 4.0 许可协议
我试图从 Amazon S3 上的存储桶下载文件。我想知道我是否可以编写一个 javascript 来从存储桶中下载这样的文件。我在谷歌上搜索它,但找不到任何可以帮助我做到这一点的资源。
要记住的一些步骤是:验证 Amazon S3,然后通过提供存储桶名称和文件(密钥),下载或读取文件,以便我能够显示文件中的数据。
谢谢,
原文由 c0mrade 发布,翻译遵循 CC BY-SA 4.0 许可协议
我来这里是为了在客户端下载一个 s3 文件。这是我解决它的方法:
因为,我不能在客户端存储我的 s3 授权密钥,我使用我的服务器端脚本生成一个预签名的 url 并将它发送回客户端,如:
const AWS = require('aws-sdk')
const s3 = new AWS.S3()
AWS.config.update({accessKeyId: 'your access key', secretAccessKey: 'you secret key'})
const myBucket = 'bucket-name'
const myKey = 'path/to/your/key/file.extension'
const signedUrlExpireSeconds = 60 * 5 // your expiry time in seconds.
const url = s3.getSignedUrl('getObject', {
Bucket: myBucket,
Key: myKey,
Expires: signedUrlExpireSeconds
})
// return the url to client
在前端使用这个 URL 来触发下载:
function download(url){
$('<iframe>', { id:'idown', src:url }).hide().appendTo('body').click();
}
$("#downloadButton").click(function(){
$.ajax({
url: 'example.com/your_end_point',
success: function(url){
download(url);
}
})
});
原文由 Sahith Vibudhi 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答13k 阅读
7 回答2.2k 阅读
4 回答4.5k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
也许您可以使用 AWS Node.js API :