問題描述
用戶端加密情境下UploadPart 時要求標頭x-oss-meta-client-side-encryption-wrap-alg的值不符合預期。
問題原因
用戶端加密情境下,在InitiateMultipartUpload時需要攜帶要求標頭x-oss-meta-client-side-encryption-wrap-alg。在後續UploadPart 時需要帶上該要求標頭傳入同樣的值。如果該要求標頭的值與InitiateMultipartUpload時傳入的不同則會報此錯誤。
問題樣本
例如您事先發起了一個InitiateMultipartUpload請求:
POST /multipart.data?uploads HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 22 Feb 2012 08:32:21 GMT
x-oss-storage-class: Archive
Authorization: OSS qn6q**************:77Dv****************
x-oss-meta-client-side-encryption-wrap-alg: value1此後您又發起了一個UploadPart請求:
PUT /multipart.data?partNumber=1&uploadId=0004B9895DBBB6EC9**** HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Content-Length:6291456
Date: Wed, 22 Feb 2012 08:32:21 GMT
Authorization: OSS qn6q**************:77Dv****************
x-oss-meta-client-side-encryption-wrap-alg: value2
[6291456 bytes data]要求標頭x-oss-meta-client-side-encryption-wrap-alg的值不符合預期,請求返回失敗。
解決方案
確保在UploadPart請求中通過要求標頭x-oss-meta-client-side-encryption-wrap-alg傳入與InitiateMultipartUpload時相同的值。