InitMultiUpload
使用Multipart Upload模式传输数据前,必须先调用该接口来通知COS初始化一个Multipart Upload事件。该接口会返回一个COS服务器创建的全局唯一的Upload ID,用于标识本次Multipart Upload事件。用户可以根据这个ID来发起相关的操作,如中止Multipart Upload、查询Multipart Upload等。
请求语法
POST /ObjectName?uploads HTTP/1.1
Host: bucketname.cos.chinac.com
Date: GMT date
Authorization: SignatureValue
响应元素
Name | Type | Description |
---|---|---|
Bucket | String | 初始化一个Multipart Upload事件的Bucket名称 |
Key | String | 初始化一个Multipart Upload事件的Object名称 |
UploadId | Long | 唯一标示此次Multipart Upload事件的ID |
细节分析
- 该操作计算认证签名的时候,需要加“?uploads”到CanonicalizedResource中
- 初始化Multipart Upload请求,支持以“x-cos-meta-”开头的用户自定义Headers。具体含义请参见PUT Object接口
- 初始化Multipart Upload请求,并不会影响已经存在的同名Object
- 服务器收到初始化Multipart Upload请求后,会返回一个json格式的请求体。该请求体内有三个元素:Bucket,Key和UploadID。请记录下其中的UploadID,以用于后续的Multipart相关操作
示例
请求示例
POST /multipart.data?uploads HTTP/1.1
Host: test-bucket.cos.chinac.com
Date: Wed, 22 Feb 2012 08:32:21 GMT
Authorization: COS qn6qrrqxo2oawuk53otfjbyc:/cluRFtRwMTZpC2hTj4F67AGdM4=
返回示例
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 230
Connection: keep-alive
x-cos-request-id: 42c25703-7503-fbd8-670a-bda01eaec618
Date: Wed, 22 Feb 2012 08:32:21 GMT
Server: COS
{
"Bucket": "test-bucket",
"Key": "multipart.data",
"UploadId": 1250
}