タケユー・ウェブ日報

Ruby on Rails や Flutter といったWeb・モバイルアプリ技術を武器にお客様のビジネス立ち上げを支援する、タケユー・ウェブ株式会社の技術ブログです。

AWS SDK for Ruby でアップロード用の署名付きURLを生成する方法

s3_resource = Aws::S3::Resource.new
object = s3_resource.bucket(BUCKET_NAME).object(OBJECT_KEY)
url = URI.parse(object.presigned_url(:put))

ちなみにcurl コマンドでアップロードするには

$ curl -i -X PUT --upload-file README.md "<PRESIGNED_URL>"

HTTP/1.1 200 OK
x-amz-id-2: FdLlF7a48jiq8Q7mM/VdAe8ZmcNfCcSKTIry5/LEZNUhizUb1+ALaNNoWjB/ZRLpD+ZtnUDqjlA=
x-amz-request-id: 61D6A2090B5A471E
Date: Mon, 07 Dec 2020 04:37:30 GMT
x-amz-version-id: DQ_QAWEZz600VtEtZJdGvZqZdiT4NzBS
ETag: "0cfbd649b94d4dc64447b516ec65f1a9"
Content-Length: 0
Server: AmazonS3