node.js - 将文件从 url 上传到 s3 存储桶

标签 node.js amazon-web-services heroku amazon-s3

我有一个在 Heroku 中运行的 nodejs 程序,它为我提供了文件的 URL。这些文件需要存储在 s3 存储桶中。

据我了解,无法将文件从 url 直接上传到 s3 存储桶。

您建议我如何从 URL 获取文件到 s3 存储桶?我已经看到有关使用 EC2 实例的讨论,但希望尽可能避免这种情况。有没有办法只使用 heroku 和 S3 来做到这一点?

最佳答案

我知道这是标记为 node-js,但如果有人需要这个用于 Ruby,请按以下方式(Ruby AWS SDK v3):

obj = Aws::S3::Object.new(bucket_name: 'target-bucket', key: 'target-key')
obj.upload_stream do |write_stream|
  IO.copy_stream(URI.open('http://example.com/file.ext'), write_stream))
end

关于node.js - 将文件从 url 上传到 s3 存储桶,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45947814/

相关文章:

docker - 使用 .Net Core 3.1 api (docker) 运行 Heroku 时出错

git - Heroku 从哪里获得 RSA key ?它似乎在 ~/.ssh/以外的地方

javascript - 获取查询参数

javascript - 将数组从 js 传递到 Nodejs

django - AWS ECS 使用 docker 和 nginx,如何将我的 nginx 配置放入容器中?

ruby-on-rails - heroku 上的一个 rails 应用程序如何访问多个数据库

node.js - 有没有办法删除最后一行输出?

node.js - 如何启动 Node 以从 IntelliJ 运行 .ts 文件?

amazon-web-services - 亚马逊 s3 重命名 Key Name 误解

amazon-web-services - 加载 csv 文件 s3 pyspark 的随机样本