我很难从 AWS 文档中确定这个问题的明确答案。 我读过各种各样的东西。 我在此页面上看到:“Amazon S3 使用校验和值来验证您上传到 Amazon S3 或从 Amazon S3 下载的数据的完整性。此外,您可以请求为您存储在 Amazon 中的任何对象计算另一个校验和值S3。” - 这似乎表明默认情况下 S3 正在计算校验和,并且 SDK 在上传或下载对象时与其进行比较,此外还可以使用单独的附加校验和算法。这可能是存储在 ETag 中的 MD5 校验和?
S3 CLI 应用程序上还有 this page 与上述想法一致,但不确定 SDK 是否也是如此。
有谁知道我的理解是否正确? 或者用户在使用上传管理器时是否需要指定[SHA-1、SHA-256、CRC32、CRC32C]之一,并要求上传时验证校验和?
AWS SDK for Go v1 不支持自动计算请求负载 校验和。 AWS SDK for Go v2 中提供了此功能。
来自 SDK 注释 -- 参考