上传到Amazon S3的文件,如果文件大小小于5GB,则ETag只是文件的MD5哈希值,这使得检查本地文件是否与在S3上的文件相同变得容易。
但如果您的文件大于5GB,则Amazon会以不同的方式计算ETag。
例如,我将一个大小为5,970,150,664字节的文件分成了380个部分进行多部分上传。现在S3显示其具有ETag 6bcf86bed8807b8e78f0fc6e0a53079d-380
。 我的本地文件具有MD5哈希值702242d3703818ddefe6bf7da2bed757
。我认为短横线后面的数字是多部分上传中的部件数。
我还怀疑新的ETag(短横线前面)仍然是MD5哈希,但在多部分上传过程中包含了某些元数据。
有人知道如何使用与Amazon S3相同的算法计算ETag吗?