ラージオブジェクトのアップロードに長時間を要する場合、ストリーミングアップロードを使用して、オブジェクト全体のアップロードが完了するまでオブジェクトストリームを継続的にアップロードできます。
例
次のコードは、ストリーミングアップロードを使用してオブジェクトをアップロードする方法の例です。
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
# この例では、中国 (杭州) のエンドポイントを使用します。 ご利用のリージョンのエンドポイントに置き換えてください。
endpoint: 'https://oss-cn-hangzhou.aliyuncs.com',
# 環境変数からアクセス認証情報を取得します。 サンプルコードを実行する前に、環境変数 OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET を設定してください。
access_key_id: ENV['OSS_ACCESS_KEY_ID'],
access_key_secret: ENV['OSS_ACCESS_KEY_SECRET']
)
# バケット名を指定します。 例: examplebucket。
bucket = client.get_bucket('examplebucket')
# オブジェクトの完全なパスを指定します。 完全なパスにはバケット名を含めないでください。 例: exampleobject.txt。
bucket.put_object('exampleobject.txt') do |stream|
100.times { |i| stream << i.to_s }
end