簡體   English   中英

Ruby AWS :: S3 :: S3Object(aws-sdk):是否有與aws-s3一樣的流數據傳輸方法?

[英]Ruby AWS::S3::S3Object (aws-sdk): Is there a method for streaming data as there is with aws-s3?

在aws-s3中,有一個方法(AWS :: S3 :: S3Object.stream),它允許您將S3上的文件流式傳輸到本地文件。 我無法在aws-sdk中找到類似的方法。

即在aws-s3中,我這樣做:

File.open(to_file, "wb") do |file|
  AWS::S3::S3Object.stream(key, region) do |chunk|
    file.write chunk
  end
end

AWS :: S3:S3Object.read方法確實將塊作為參數,但似乎沒有對它執行任何操作。

aws-sdk gem現在支持S3中對象的分塊讀取。 以下示例給出了演示:

s3 = AWS::S3.new
File.open(to_file, "wb") do |file|
  s3.buckets['bucket-name'].objects['key'].read do |chunk|
    file.write chunk
  end
end

這時候,不是正式的。 我在官方AWS Ruby論壇中找到了這個帖子:

ruby是否支持來自S3的流式下載 引用AWS員工:

不幸的是,aws-sdk gem沒有很好的解決方案。 我們正在研究如何讓最終用戶更加簡單。

有用於下載塊的示例代碼。 你可能想看看它的靈感。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM