すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:0005-00000420

最終更新日:Dec 20, 2023

問題の説明

UploadPartリクエストのすべてのパーツの合計サイズが、InitiateMultipartUploadリクエストで指定されたデータサイズと等しくありません。

原因

最後のUploadPartリクエストの最後のパーツのサイズが期待値ではありません。

クライアント側の暗号化シナリオのInitiateMultipartUploadリクエストでは、x-oss-meta-client-side-encryption-data-sizeおよびx-oss-meta-client-side-encryption-part-sizeヘッダーが必要です。 最後のリクエストを除く各UploadPartリクエストは、InitiateMultipartUploadリクエストのx-oss-meta-client-side-encryption-part-sizeヘッダーで指定されたパーツサイズと同じサイズのデータをアップロードする必要があります。 最後の部分のサイズは、x-oss-meta-client-side-encryption-data-sizeヘッダーの値からアップロードされた部分のサイズを引いた値です。

たとえば、InitiateMultipartUploadリクエストを開始します。

POST /multipart.data? HTTP/1.1のアップロード
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
日付: 2月22日水2012 08:32:21 GMT
x-oss-storage-class: アーカイブ
権限付与: OSS qn6qrrqxo2oawuk53otfjbyc:/cluRFtRwMTZpC2hTj4F67AG ****
x-oss-meta-client-side-encryption-data-size: 2048
x-oss-meta-client-side-encryption-part-size: 1024 

次に、UploadPartリクエストを開始します。

PUT /multipart.data?partNumber=1&uploadId=0004B9895DBBB6EC9 **** HTTP/1.1
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
コンテンツ-長さ: 1024
日付: 2月22日水2012 08:32:21 GMT
権限付与: OSS qn6qrrqxo2oawuk53otf ****:J/lICfXEvPmmSW86bBAfMmUm ****
x-oss-meta-client-side-encryption-part-size: 1024
[1024バイトのデータ] 

2番目のUploadPartリクエストを開始します。

PUT /multipart.data?partNumber=2&uploadId=0004B9895DBBB6EC9 **** HTTP/1.1
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
コンテンツ-長さ: 100
日付: 2月22日水2012 08:32:21 GMT
権限付与: OSS qn6qrrqxo2oawuk53otf ****:J/lICfXEvPmmSW86bBAfMmUm ****
x-oss-meta-client-side-encryption-part-size: 1024
[100バイトのデータ] 

2番目のUploadPartリクエストでは、リクエストのデータサイズが予想サイズと異なるため、エラーが返されます。

ソリューション

最後のパーツのサイズが、InitiateMultipartUploadリクエストで指定されたデータサイズから、アップロードされたすべてのパーツのサイズを引いたサイズであることを確認します。

関連ドキュメント