マルチパートアップロード操作を開始した後、指定されたオブジェクト名とアップロードIDに基づいてパートごとにデータをアップロードします。
使用上の注意
UploadPart操作を呼び出してデータをパーツごとにアップロードする前に、InitiateMultipartUpload操作を呼び出して、Object Storage Service (OSS) によって生成されたアップロードIDを取得する必要があります。
同じpartNumberを使用して新しいパーツをアップロードすると、partNumberを使用してアップロードされた既存のパーツが上書きされます。
OSSには、応答のETagヘッダーに受信した各部分のMD5ハッシュが含まれます。
InitiateMultipartUpload操作の呼び出し時にx-oss-server-side-encryptionリクエストヘッダーが指定されている場合、アップロードされたパーツは暗号化されます。 x-oss-server-side-encryptionヘッダーがレスポンスに含まれています。これは、パーツのサーバー側暗号化アルゴリズムを示します。 詳細については、「InitiateMultipartUpload」をご参照ください。
リクエスト構文
PUT /ObjectName?partNumber=PartNumber&uploadId=UploadId HTTP/1.1
ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com
日付: GMT日付
コンテンツ-長さ: サイズ
権限付与: SignatureValue
リクエストヘッダー
このリクエストには、共通リクエストヘッダーのみが含まれます。 詳細については、「共通HTTPヘッダー」をご参照ください。
リクエスト要素
要素 | データ型 | 必須 | 例 | 説明 |
partNumber | 正の整数 | 必須 | 1 | 部品を識別する番号。 有効な値: 1 ~ 10000 部品のサイズは100 KB〜5 GBです。 説明 マルチパートアップロードでは、最後のパートを除く各パートのサイズは100 KB以上でなければなりません。 すべてのパーツがアップロードされていないため、各パーツのサイズはUploadPart操作を呼び出しても検証されません。 各パーツのサイズは、CompleteMultipartUpload操作を呼び出した場合にのみ確認されます。 |
uploadId | String | 必須 | 0004B9895DBBB6EC9 **** | アップロードするパーツが属するオブジェクトを識別するID。 |
レスポンスヘッダー
ヘッダー | データ型 | 例 | 説明 |
Content-MD5 | String | 1B2M2Y8AsgTpgAmY7PhC **** | 部品のMD5ハッシュ。 重要 部品のMD5ハッシュは、クライアントがオブジェクトをアップロードした後に取得されます。 レスポンス本文のMD5ハッシュではありません。 |
x-oss-hash-crc64ecma | String | 316181249502703 **** | 部品のCRC-64値。 |
UploadPartリクエストへのレスポンスの一般的なレスポンスヘッダー (Dateやx-oss-request-idなど) の詳細については、「一般的なHTTPヘッダー」をご参照ください。
例
リクエストの例
PUT /multipart.data?partNumber=1&uploadId=0004B9895DBBB6EC9 **** HTTP/1.1
ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
コンテンツ-長さ: 6291456
日付: 2月22日水2012 08:32:21 GMT
権限付与: OSS qn6qrrqxo2oawuk53otf ****:J/lICfXEvPmmSW86bBAfMmUm ****
[6291456バイトのデータ]
レスポンスの例
HTTP/1.1 200 OK
サーバー: AliyunOSS
Content-length: 0
接続: キープアライブ
ETag: "7265F4D211B56873A381D321F586 ****"
x-oss-request-id: 3e6aba62-1eae-d246-6118-8ff42cd0 ****
日付: 2月22日水2012 08:32:21 GMT
Content-MD5: 1B2M2Y8AsgTpgAmY7Ph ****
x-oss-hash-crc64ecma: 316181249502703 ****
x-oss-server-time: 77
OSS SDK
エラーコード
エラーコード | HTTPステータスコード | 説明 |
NoSuchUpload | 404 | 指定されたマルチパートアップロードIDは存在しません。 |
InvalidArgument | 400 | 部品番号は1〜10000の範囲内ではない。 |
InvalidDigest | 400 | リクエストのContent-MD5値は、OSSによって計算されたMD5ハッシュとは異なります。 データ送信中のエラーを防ぐために、リクエストにContent-MD5値を含めることができます。 OSSは、アップロードされたデータのMD5ハッシュを計算し、リクエストのContent-MD5値と比較します。 |