bucket_name = "bucket name"
file_name = 'file_name.csv'
storage = Google::Cloud::Storage.new(
project_id: "project id",
)
file = storage.bucket(bucket_name).file(file_name)
file.download(to: "path/to/local/file/#{file_name}")
当我使用上面的代码下载文件时,出现错误:“未知关键字::soft_deleted”。不知道为什么,请帮忙!
预期:我可以从 GCS 下载文件
查看错误,我相信您正在尝试下载软删除文件。
当您从启用了软删除的存储桶中删除对象时,
Cloud Storage
将已删除的对象移至 软删除 状态。在此状态下,除非您显式列出或恢复软删除的对象,否则该对象对存储桶不可见。
Google
于2024年3月25日推出了此软删除功能。默认情况下,新创建的 Cloud Storage buckets
会启用软删除功能。此功能允许在设定的 7 天保留期内恢复已删除的对象。但是,一旦过了此期限,这些对象就会从 Cloud Storage 中永久删除,并且无法再恢复。
您可能在启用软删除功能并尝试下载文件时意外删除了文件。如果您想下载这些文件,则必须先恢复这些对象(如果它们仍在保留期内)。
有关其他参考,请检查此 Cloud Storage API 类 Google::Cloud::Storage::File。