将文件从 url 上传到 s3 存储桶

lik*_*her 1 heroku amazon-s3 amazon-web-services node.js

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

我的理解是无法将文件从 url 直接上传到 s3 存储桶。

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

kin*_*no1 5

我知道这被标记为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
Run Code Online (Sandbox Code Playgroud)