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

Object Storage Service:UploadPart

最終更新日:Mar 27, 2025

マルチパートアップロード操作を開始した後に、指定されたオブジェクト名とアップロード ID に基づいて、パーツごとにデータをアップロードします。

使用方法

  • UploadPart 操作を呼び出してパーツごとにデータをアップロードする前に、InitiateMultipartUpload 操作を呼び出して、Object Storage Service (OSS) によって生成されたアップロード ID を取得する必要があります。

  • 同じ partNumber を使用して新しいパーツをアップロードすると、partNumber を使用してアップロードされた既存のパーツが上書きされます。

  • OSS は、受信した各パーツの MD5 ハッシュをレスポンスの ETag ヘッダーに含めます。

  • InitiateMultipartUpload 操作の呼び出し時に x-oss-server-side-encryption リクエストヘッダーが指定されている場合、アップロードされたパーツは暗号化されます。 x-oss-server-side-encryption ヘッダーはレスポンスに含まれており、パーツのサーバー側暗号化アルゴリズムを示します。詳細については、「InitiateMultipartUpload」をご参照ください。

権限

デフォルトでは、Alibaba Cloud アカウントは、アカウント内のリソースに対するフル権限を持っています。一方、RAM ユーザーと Alibaba Cloud アカウントに関連付けられている RAM ロールは、最初は権限を持っていません。 RAM ユーザーまたはロールを使用してリソースを管理するには、RAM ポリシーまたはバケットポリシーを使用して必要な権限を付与する必要があります。

API

アクション

説明

UploadPart

oss:PutObject

パーツをアップロードします。

リクエスト構文

PUT /ObjectName?partNumber=PartNumber&uploadId=UploadId HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Content-Length: Size
Authorization: SignatureValue

リクエストヘッダー

UploadPart リクエストのすべてのヘッダーは、共通のリクエストヘッダーです。詳細については、「共通リクエストヘッダー」をご参照ください。

リクエスト要素

要素

タイプ

必須

説明

partNumber

正の整数

はい

1

パーツを識別する番号。

有効値: 1 ~ 10000

パーツのサイズは 100 KB ~ 5 GB です。

説明

マルチパートアップロードでは、最後のパーツを除く各パーツのサイズは 100 KB 以上である必要があります。 UploadPart 操作の呼び出し時には、すべてのパーツがアップロードされるわけではなく、OSS はどのパーツが最後のパーツかを判断できないため、各パーツのサイズは検証されません。各パーツのサイズは、CompleteMultipartUpload 操作を呼び出すときにのみ検証されます。

uploadId

文字列

はい

0004B9895DBBB6EC9****

アップロードするパーツが属するオブジェクトを識別する ID。

レスポンスヘッダー

ヘッダー

タイプ

説明

Content-MD5

文字列

1B2M2Y8AsgTpgAmY7PhC****

パーツの MD5 ハッシュ。

重要

パーツの MD5 ハッシュは、クライアントがオブジェクトをアップロードした後に取得されます。レスポンスボディの MD5 ハッシュではありません。

x-oss-hash-crc64ecma

文字列

316181249502703****

パーツの CRC-64 値。

UploadPart リクエストへのレスポンスに含まれる Date や x-oss-request-id などの共通レスポンスヘッダーの詳細については、「共通 HTTP ヘッダー」をご参照ください。

リクエストの例

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****************
[6291456 bytes data]

レスポンスの例

HTTP/1.1 200 OK
Server: AliyunOSS
Content-length: 0
Connection: keep-alive
ETag: "7265F4D211B56873A381D321F586****"
x-oss-request-id: 3e6aba62-1eae-d246-6118-8ff42cd0****
Date: Wed, 22 Feb 2012 08:32:21 GMT
Content-MD5: 1B2M2Y8AsgTpgAmY7Ph****
x-oss-hash-crc64ecma: 316181249502703****
x-oss-server-time: 77

OSS SDK

以下のプログラミング言語の OSS SDK を使用して、UploadPart 操作を呼び出すことができます。

ossutil

UploadPart 操作に対応する ossutil コマンドの詳細については、「upload-part」をご参照ください。

エラーコード

エラーコード

HTTP ステータスコード

説明

NoSuchUpload

404

指定されたマルチパートアップロード ID が存在しません。

InvalidArgument

400

パーツ番号が 1 ~ 10000 の範囲内にありません。

InvalidDigest

400

リクエスト内の Content-MD5 値が、OSS によって計算された MD5 ハッシュと異なります。データ転送中のエラーを防ぐために、リクエストに Content-MD5 値を含めることができます。 OSS は、アップロードされたデータの MD5 ハッシュを計算し、リクエスト内の Content-MD5 値と比較します。これらの 2 つの値の不一致は、データ転送中にエラーが発生したことを示します。