Ruby on rails 在将图像上传到s3之前,我是否必须下载图像?

Ruby on rails 在将图像上传到s3之前,我是否必须下载图像?,ruby-on-rails,aws-sdk,aws-sdk-ruby,Ruby On Rails,Aws Sdk,Aws Sdk Ruby,我有嵌入图像的Rails应用程序。我想要的是将这些图片上传到s3,并从那里提供主题,而不是从原始来源上传到s3之前,我必须将img下载到我的服务器吗?简短回答:如果你正在抓取某人的内容,那么……是的,你需要在上传到s3之前将文件向下拉 详细回答:如果另一个站点(原始源)与您合作,您可以给他们一个预先签名的URL,他们可以使用该URL上传到您的S3存储桶 来自亚马逊的文档: #Uploading an object using a presigned URL for SDK for Ruby -

我有嵌入图像的Rails应用程序。我想要的是将这些图片上传到s3,并从那里提供主题,而不是从原始来源上传到s3之前,我必须将img下载到我的服务器吗?

简短回答:如果你正在抓取某人的内容,那么……是的,你需要在上传到s3之前将文件向下拉

详细回答:如果另一个站点(原始源)与您合作,您可以给他们一个预先签名的URL,他们可以使用该URL上传到您的S3存储桶

来自亚马逊的文档:

#Uploading an object using a presigned URL for SDK for Ruby - Version 3.

require 'aws-sdk-s3'
require 'net/http'

s3 = Aws::S3::Resource.new(region:'us-west-2')

obj = s3.bucket('BucketName').object('KeyName')
# Replace BucketName with the name of your bucket.
# Replace KeyName with the name of the object you are creating or replacing.

url = URI.parse(obj.presigned_url(:put))

body = "Hello World!"
# This is the contents of your object. In this case, it's a simple string.

Net::HTTP.start(url.host) do |http|
  http.send_request("PUT", url.request_uri, body, {
# This is required, or Net::HTTP will add a default unsigned content-type.
    "content-type" => "",
  })
end

puts obj.get.body.read
# This will print out the contents of your object to the terminal window.