668
小米6
InitiateMultipartUpload__关于MultipartUpload的操作_API 参考_对象存储 OSS-阿里云
使用Multipart Upload模式传输数据前,必须先调用该接口来通知OSS初始化一个Multipart Upload事件。该接口会返回一个OSS服务器创建的全局唯一的Upload ID,用于标识本次Multipart Upload事件。用户可以根据这个ID来发起相关的操作,如中止Multipart Upload、查询Multipart Upload等。
请求语法
POST /ObjectName?uploads HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT date
Authorization: SignatureValue
请求参数(Request Parameters)
Initiate Multipart Upload时,可以通过encoding-type对返回结果中的Key进行编码。
名称 | 描述 |
---|---|
encoding-type | 指定对返回的Key进行编码,目前支持url编码。Key使用UTF-8字符,但xml 1.0标准不支持解析一些控制字符,比如ascii值从0到10的字符。对于Key中包含xml 1.0标准不支持的控制字符,可以通过指定encoding-type对返回的Key进行编码。 数据类型:字符串 默认值:无,可选值:url |
请求Header
名称 | 描述 |
---|---|
Cache-Control | 指定该Object被下载时的网页的缓存行为;更详细描述请参照RFC2616。 类型:字符串 默认值:无 |
Content-Disposition | 指定该Object被下载时的名称;更详细描述请参照RFC2616。 类型:字符串 默认值:无 |
Content-Encoding | 指定该Object被下载时的内容编码格式;更详细描述请参照RFC2616。 类型:字符串 默认值:无 |
Expires | 过期时间(milliseconds);更详细描述请参照RFC2616。 类型:整数 默认值:无 |
x-oss-server-side-encryption | 指定上传该Object每个part时使用的服务器端加密编码算法,OSS会对上传的每个part采用服务器端加密编码进行存储。 类型:字符串 合法值:AES256 |
响应元素(Response Elements)
名称 | 描述 |
---|---|
Bucket | 初始化一个Multipart Upload事件的Bucket名称。 类型:字符串 父节点:InitiateMultipartUploadResult |
InitiateMultipartUploadResult | 保存Initiate Multipart Upload请求结果的容器。 类型:容器 子节点:Bucket, Key, UploadId 父节点:None |
Key | 初始化一个Multipart Upload事件的Object名称。 类型:字符串 父节点:InitiateMultipartUploadResult |
UploadId | 唯一标示此次Multipart Upload事件的ID。 类型:字符串 父节点:InitiateMultipartUploadResult |
EncodingType | 指明返回结果中编码使用的类型。如果请求的参数中指定了encoding-type,那返回的结果会对Key进行编码。 类型:字符串 父节点:容器 |
细节分析
- 该操作计算认证签名的时候,需要加“?uploads”到CanonicalizedResource中。
- 初始化Multipart Upload请求,支持如下标准的HTTP请求头:Cache-Control,Content- Disposition,Content-Encoding,Content-Type,Expires,以及以“x-oss-meta-”开头的用户自定义Headers。具体含义请参见PUT Object接口。
- 初始化Multipart Upload请求,并不会影响已经存在的同名object。
- 服务器收到初始化Multipart Upload请求后,会返回一个XML格式的请求体。该请求体内有三个元素:Bucket,Key和UploadID。请记录下其中的UploadID,以用于后续的Multipart相关操作。
- 初始化Multipart Upload请求时,若设置了x-oss-server-side-encryption Header,则在响应头中会返回该Header,并且在上传的每个part时,服务端会自动对每个part进行熵编码加密存储,目前OSS服务器端只支持256位高级加密标准(AES256),指定其他值会返回400和相应的错误提示:InvalidEncryptionAlgorithmError;在上传每个part时不必再添加x-oss-server-side-encryption 请求头,若指定该请求头则OSS会返回400和相应的错误提示:InvalidArgument。
示例
请求示例:
POST /multipart.data?uploads HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 22 Feb 2012 08:32:21 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc:/cluRFtRwMTZpC2hTj4F67AGdM4=
返回示例:
HTTP/1.1 200 OK
Content-Length: 230
Server: AliyunOSS
Connection: keep-alive
x-oss-request-id: 42c25703-7503-fbd8-670a-bda01eaec618
Date: Wed, 22 Feb 2012 08:32:21 GMT
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<InitiateMultipartUploadResult xmlns=”https://doc.oss-cn-hangzhou.aliyuncs.com”>
<Bucket> multipart_upload</Bucket>
<Key>multipart.data</Key>
<UploadId>0004B9894A22E5B1888A1E29F8236E2D</UploadId>
</InitiateMultipartUploadResult>
最后更新:2016-11-23 17:16:08
上一篇:
GetSymlink__关于Object操作_API 参考_对象存储 OSS-阿里云
下一篇:
UploadPart__关于MultipartUpload的操作_API 参考_对象存储 OSS-阿里云
日志服务监控__云服务监控_用户指南_云监控-阿里云
脚本调试__脚本编写_使用手册_性能测试-阿里云
GetObjectACL__关于Object操作_API 参考_对象存储 OSS-阿里云
应用容量__应用基本配置_产品使用手册_开放搜索-阿里云
cname接入指南__常见接入问题_Web 应用防火墙-阿里云
查询伸缩组__伸缩组_用户指南_弹性伸缩-阿里云
降级管理__限流降级_用户指南_企业级分布式应用服务 EDAS-阿里云
阿里云全球化迈入2.0阶段,或将助推阿里取得更大突破
概述及样例__使用手册(调用API)_API 网关-阿里云
Pig 开发手册__Hadoop_开发人员指南_E-MapReduce-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云