![](/img/trans.png)
[英]aws-sdk for Ruby v2: check success status after I PUT object in S3 bucket
[英]How to Rename a file on S3 bucket after save using 'aws-sdk'?
我正在嘗試使用以下代碼更新保存在AWS S3上的文件名
gem 'aws-sdk', '~> 2.3'
creds = Aws::Credentials.new(ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'])
s3 = Aws::S3::Resource.new(credentials: creds, region: ENV['AWS_REGION'])
bucket = s3.bucket(ENV['AWS_S3_BUCKET'])
filename = URI.unescape(document.url).split('/').last
new_file = 'new_file_name'
obj = bucket.object(filename) # create object of original file name
obj.move_to("#{bucket.name}/#{new_file}", acl: 'public-read')
obj = bucket.object(new_file)
更新時,在obj.move_to("#{bucket.name}/#{new_file}", acl: 'public-read')
行上給出錯誤:
Aws::S3::Errors::NoSuchKey
The specified key does not exist.
有什么建議或想法如何重命名s3上的文件?
謝謝
您試圖將鍵x
的對象移動到鍵nil
。 鑒於您的錯誤,我將嘗試首先初始化一個新對象y
然后在其上調用move_to。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.