详情页标题前

腾讯云对象存储Complete Multipart Upload

详情页1

功能描述

Complete Multipart Upload 接口请求用来实现完成整个分块上传。当使用 Upload Part 上传所有分块完成后,必须调用该 API 来完成整个文件的分块上传。在使用该 API 时,您必须在请求体中给出每一个块的 PartNumber 和 ETag,用来校验块的准确性。由于分块上传完成后需要合并,而合并需要数分钟时间,因而当合并分块开始时,COS 会立即返回200的状态码并指定 Transfer-Encoding: chunked 响应头部,在合并的过程中,COS 会周期性的使用 chunked 方式返回空格信息来保持连接活跃,直到合并完成,COS 会在最后一个 chunk 中返回合并完成后整个对象的信息。当上传的分块小于1MB的时候,在调用该 API 时,会返回400 EntityTooSmall。当上传块编号不连续的时候,在调用该 API 时,会返回400 InvalidPart。当请求 Body 中的块信息没有按序号从小到大排列的时候,在调用该 API 时,会返回400 InvalidPartOrder。当 UploadId 不存在的时候,在调用该 API 时,会返回404 NoSuchUpload。说明
只有主账号或者被授权 Complete Multipart Upload 接口权限的子账号可以调用该接口。
注意 建议您及时完成分块上传或者舍弃分块上传,因为已上传但是未终止的块会占用存储空间进而产生存储费用。

授权说明

授权策略中 action 设置为 cos:CompleteMultipartUpload 。查看所有 action

版本控制

如果对存储桶启用版本控制,对象存储将自动为要添加的对象生成唯一的版本 ID。对象存储使用 x-cos-version-id 响应头部在响应中返回此标识。如果暂停存储桶的版本控制,则对象存储始终将 null 用作存储在存储桶中的对象的版本 ID,并返回 x-cos-version-id: null 响应头部。

请求

请求示例

POST /?uploadId=UploadId HTTP/1.1Host: .cos..myqcloud.comDate: GMT DateContent-Type: application/xmlContent-Length: Content LengthContent-MD5: MD5Authorization: Auth String
[Request Body]

说明Host: .cos..myqcloud.com,其中 为带 APPID 后缀的存储桶名字,例如 examplebucket-1250000000,可参阅 存储桶概览 > 基本信息存储桶概述 > 存储桶命名规范 文档; 为 COS 的可用地域,可参阅 地域和访问域名 文档。Authorization: Auth String(详情请参见 请求签名 文档)。

请求参数

名称 描述 类型 是否必选
uploadId 标识本次分块上传的 ID,使用 Initiate Multipart Upload 接口初始化分块上传时得到的 UploadId。 string

请求头

此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

请求体

提交 application/xml 请求数据,包含所有分块信息。

            integer        string                integer        string    

具体的节点描述如下:

节点名称(关键字) 父节点 描述 类型 是否必选
CompleteMultipartUpload 包含 Complete Multipart Upload 操作的所有请求信息 Container

Container 节点 CompleteMultipartUpload 的内容:

节点名称(关键字) 父节点 描述 类型 是否必选
Part CompleteMultipartUpload 用来说明本次分块上传中每个块的信息 Container

Container 节点 Part 的内容:

节点名称(关键字) 父节点 描述 类型 是否必选
PartNumber CompleteMultipartUpload.Part 块编号 integer
ETag CompleteMultipartUpload.Part 使用 Upload Part 请求上传分块成功后返回的 ETag 响应头部的值 string

响应

响应头

此接口除返回公共响应头部外,还返回以下响应头部,了解公共响应头部详情请参见 公共响应头部 文档。版本控制相关头部在启用版本控制的存储桶中上传对象,将返回下列响应头部:

名称 描述 类型
x-cos-version-id 对象的版本 ID string

服务端加密(SSE)相关头部如果在上传对象时使用了服务端加密,则此接口将返回服务端加密专用头部,请参见 服务端加密专用头部

响应体

请求成功,返回 application/xml 数据,包含合并完成后的整个对象信息。

    string    string    string    string

具体的节点描述如下:

节点名称(关键字) 父节点 描述 类型
CompleteMultipartUploadResult 保存 Complete Multipart Upload 结果的所有信息 Container

Container 节点 CompleteMultipartUploadResult 的内容:

节点名称(关键字) 父节点 描述 类型
Location CompleteMultipartUploadResult 分块上传完成的对象位置,格式为http://.cos..myqcloud.com/,例如http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject string
Bucket CompleteMultipartUploadResult 分块上传的目标存储桶,格式为,例如examplebucket-1250000000 string
Key CompleteMultipartUploadResult 对象键 string
ETag CompleteMultipartUploadResult 分块合并后的对象 ETag 值 string

错误码

此接口遵循统一的错误响应和错误码,详情请参见 错误码 文档。

实际案例

此接口响应默认为 Transfer-Encoding: chunked 编码方式,为了方便阅读,本文档实际案例均采用无 Transfer-Encoding 的方式展示,在使用过程中,不同语言和库可以自动处理这种编码形式,请开发者注意识别和处理,更多信息请查阅语言和库的相关文档。

案例一:简单案例(未启用版本控制)

请求

POST /exampleobject?uploadId=1585130821cbb7df1d11846c073ad648e8f33b087cec2381df437acdc833cf654b9ecc6361 HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Wed, 25 Mar 2020 10:07:26 GMTContent-Type: application/xmlContent-Length: 353Content-MD5: Me/0Gvtc2x4VPIOhoIRllw==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1585130846;1585138046&q-key-time=1585130846;1585138046&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=45dae7b1a54930587f8123954664b1b5148b****Connection: close
1 "39270a968a357d24207e9911162507eb" 2 "d899fbd1e06109ea2e4550f5751c88d6" 3 "762890d6c9a871b7bd136037cb2260cd"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Wed, 25 Mar 2020 10:07:26 GMTServer: tencent-cosx-cos-hash-crc64ecma: 2290339086971918696x-cos-request-id: NWU3YjJkNWVfZDFjODJhMDlfMTk2ODJfMmEyNTA0****
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "aa259a62513358f69e98e72e59856d88-3"

案例二:使用服务端加密 SSE-COS

请求

POST /exampleobject?uploadId=1590862540251355295a5c736513d70d42b92bbde4f0fafb5e0ecb314b55aa0018cc9fa76f HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Sat, 30 May 2020 18:16:08 GMTContent-Type: application/xmlContent-Length: 153Content-MD5: wmpyfdr9s/A+VCBwDdC1bA==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1590862568;1590869768&q-key-time=1590862568;1590869768&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=abe1fd2d2c057c8f3e4d331a0448b06ecf5b****Connection: close
1 "108f528eb63b65e734f27ae331f5ffaa"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Sat, 30 May 2020 18:16:08 GMTServer: tencent-cosx-cos-hash-crc64ecma: 4510578591875220731x-cos-request-id: NWVkMmEyZThfYTJjMjJhMDlfMmQzOV8zYTM5****x-cos-server-side-encryption: AES256
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "915fca1c3b2737c262458b3a1a43c683-1"

案例三:使用服务端加密 SSE-KMS

请求

POST /exampleobject?uploadId=15908625793957d71176fa878282d266a95b79dc2aec159b4a73d1d79c80d4f931cda6ad65 HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Sat, 30 May 2020 18:16:40 GMTContent-Type: application/xmlContent-Length: 153Content-MD5: jUFgTSZThmPT3qseea0mRQ==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1590862600;1590869800&q-key-time=1590862600;1590869800&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=68aaf036efac07ef8d6ef101f81a1589849a****Connection: close
1 "1d3e8ae9da423b440341b09f1616f074"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Sat, 30 May 2020 18:16:40 GMTServer: tencent-cosx-cos-hash-crc64ecma: 4510578591875220731x-cos-request-id: NWVkMmEzMDhfYzhjODJhMDlfMjNhYTBfMjdmNjNl****x-cos-server-side-encryption: cos/kmsx-cos-server-side-encryption-cos-kms-key-id: 48ba38aa-26c5-11ea-855c-52540085****
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "8093dc3e18f7070444e6ca21789eb8d4-1"

案例四:使用服务端加密 SSE-C

请求

POST /exampleobject?uploadId=1590862610acd643927bad05cd3947bf98b56b04b0b0b2a45a49969f87cc95b7fd5fcc065a HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Sat, 30 May 2020 18:17:11 GMTContent-Type: application/xmlContent-Length: 153Content-MD5: MnXmb3yvrbwMfBlUwUE1Hg==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1590862631;1590869831&q-key-time=1590862631;1590869831&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=5ce15a35c591eb797e8abaf210313e58ac03****Connection: close
1 "ff14981a35a58eb97bca838b055c573b"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Sat, 30 May 2020 18:17:11 GMTServer: tencent-cosx-cos-hash-crc64ecma: 4510578591875220731x-cos-request-id: NWVkMmEzMjdfODljOTJhMDlfMzQ2ZDNfMWMwZWYy****x-cos-server-side-encryption-customer-algorithm: AES256x-cos-server-side-encryption-customer-key-MD5: U5L61r7jcwdNvT7frmUG8g==
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "55973f71e8e892273053617e6b83d1c7-1"

案例五:启用版本控制

请求

POST /exampleobject?uploadId=15908626631e1995018f81a5e563837d6d7f1b51d7c97dff09989296403e32366e52f2877b HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Sat, 30 May 2020 18:18:04 GMTContent-Type: application/xmlContent-Length: 153Content-MD5: wmpyfdr9s/A+VCBwDdC1bA==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1590862684;1590869884&q-key-time=1590862684;1590869884&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=5409509944602014d1b61cb4bbe1e39003b4****Connection: close
1 "108f528eb63b65e734f27ae331f5ffaa"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Sat, 30 May 2020 18:18:04 GMTServer: tencent-cosx-cos-hash-crc64ecma: 4510578591875220731x-cos-request-id: NWVkMmEzNWNfOGNjOTJhMDlfMWQ4NjJfMWM0NGUw****x-cos-version-id: MTg0NDUxNTMyMTEwNDU1NDc3OTc
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "42318fc0ec58952b0d9ab4d7a006f595-1"

案例六:暂停版本控制

请求

POST /exampleobject?uploadId=1590862705b4349d597c0db1281e1c666bc431eb468b3a64076be7093c91a963bc5ead2ea4 HTTP/1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Sat, 30 May 2020 18:18:45 GMTContent-Type: application/xmlContent-Length: 153Content-MD5: wmpyfdr9s/A+VCBwDdC1bA==Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1590862725;1590869925&q-key-time=1590862725;1590869925&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=uploadid&q-signature=b212e42daaeabcd2b8e9f6722b62fe8d618b****Connection: close
1 "108f528eb63b65e734f27ae331f5ffaa"

响应

HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 378Connection: closeDate: Sat, 30 May 2020 18:18:45 GMTServer: tencent-cosx-cos-hash-crc64ecma: 4510578591875220731x-cos-request-id: NWVkMmEzODVfZjZjMjBiMDlfNGYzZV8zODc4****x-cos-version-id: null
http://examplebucket-1250000000.cos.ap-beijing.myqcloud.com/exampleobject examplebucket-1250000000 exampleobject "491509b1fdf8e13d1f51d323c4a6d0e8-1"



对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/145021.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云TDSQL-C MySQL版快速入门

    本文为您介绍从购买集群到可以正常使用集群过程中所需的流程。 使用流程 从购买 TDSQL-C MySQL 版集群到可以开始使用,您需要完成如下步骤: 步骤1 注册腾讯云账号。完成实名认证。 步骤2 购买预置资源/Serverless 集群。购买步骤请参见以下文档:创建预置资源集群。创建 Serverless 集群。 步骤3 检查是否已配置好安全组。如果在购…

    腾讯云 2023年12月9日
  • 腾讯云云托付物理服务器访问服务器的 BMC云淘

    操作场景 本文介绍如何通过控制台访问 CHC 物理服务器的 BMC(带外管理)界面。说明不同厂商的服务器的 BMC 界面和功能并不相同,本文以 H3C 服务器的 BMC 界面为例。 前提条件 在进行登录操作前,您需完成 接入指引 中的前7个步骤。CHC 物理服务器应处于“可生产”或“已生产”状态。 操作步骤 准备跳板机 由于 CHC 物理服务器的带外网络不支…

    2023年12月9日
  • 函数计算中,函数计算设置了oss触发器,有什么办法可以等文件上传完再一次性执行的?-云小二-阿里云

    函数计算中,函数计算设置了oss触发器,文件上传到OSS触发函数执行多次,这种有什么办法可以等文件上传完再一次性执行的?配置触发器的时候可以选择支持哪些操作的。 以下为热心网友提供的参考意见 在函数计算中,您可以创建并配置原生OSS触发器,当在OSS上发生特定事件时会自动触发函数执行。这可以让您轻松响应如文件上传等事件,无需在代码中增加监听事件逻辑即可快速实…

    阿里云 2024年1月3日
  • 腾讯云TDSQL-C MySQL版设置告警策略

    本文为您介绍通过控制台创建告警策略和创建后管理告警策略的方法。 操作场景 您可以创建告警用于在 TDSQL-C MySQL 版状态改变时触发警报并发送相关消息。创建的告警会根据每隔一段时间监控的指标相对于给定阈值的情况判断,是否需要触发相关通知。状态改变触发告警后,您可以及时进行相应的预防或补救措施。因此,合理地创建告警能帮助您提高 TDSQL-C MySQ…

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云轻量应用服务器快速入门云小二

    简介 轻量对象存储服务提供了便捷的文件操作和管理控制台,用户可以在控制台上进行任意格式文件的上传、下载和文件管理;轻量对象存储服务支持原生的数据分发、数据处理,主要特点为低成本、高效率、简单易用,适用于个人博客、小程序搭建、课堂环境演示等使用场景。 准备工作 初次使用轻量对象存储服务,需要初步了解几个基本概念:对象(Object):轻量对象存储的最小资源粒度…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。