gpt4 book ai didi

ruby - 如何使用 ruby​​ 和 aws-sdk 将大型存档上传到 Amazon Glacier?

转载 作者:数据小太阳 更新时间:2023-10-29 08:12:40 25 4
gpt4 key购买 nike

亚马逊的 glacier 文档似乎没有包含任何 Ruby 示例,而且文档本身也相当稀疏。

我想我需要实例化一个 Glacier Client 对象,然后使用 upload_multipart_part 方法访问 Glacier API,但不确定如何处理参数以传递给 upload_multipart_part。如何使用 ruby​​ 计算 AWS 正在寻找的校验和?什么是 upload_id?

更新

通过阅读 Amazon 的文档了解其中的大部分内容。他们似乎没有任何 ruby​​ 代码示例,代码示例的 github repo 不包括 Glacier。但是通过查看原始 API 文档和一些 Java 和 PHP 示例,我似乎会这样做:

client = AWS::Glacier::Client.new(access_key_id: ACCESS_KEY_ID, secret_access_key: SECRET_ACCESS_KEY)
resp = client.initiate_multipart_upload(account_id: ACCOUNT_ID, vault_name: 'My Vault', archive_description: "Backup of some stuff", part_size: PART_SIZE_IN_BYTES)

如果一切顺利,Amazon API 响应应该包含一个唯一的 upload_id,然后我将在使用 client.upload_multipart_part() 的后续调用中使用它。

我猜校验和可以这样计算:

Digest::SHA256.file(file_to_upload).hexdigest

更新 2

好像这个问题已经解决了:

https://github.com/fog/fog

最佳答案

对于任何其他感兴趣的人,此链接很有帮助,几乎涵盖了您需要的大部分内容:

http://www.spacevatican.org/2012/9/4/using-glacier-with-fog/

它并没有真正提供有关如何实例化冰川对象的所有细节:

glacier = Fog::AWS::Glacier.new({
:aws_access_key_id => YOUR_ACCESS_KEY_ID,
:aws_secret_access_key => YOUR_SECRET_ACCESS_KEY
})

关于ruby - 如何使用 ruby​​ 和 aws-sdk 将大型存档上传到 Amazon Glacier?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18613114/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com