
# POST上传-PostObject
#### 功能介绍
上传对象操作是指在指定的桶内增加一个对象，执行该操作需要用户拥有对桶的写权限。了解更多上传方式相关介绍，请参见[表单上传（POST上传）](https://support.huaweicloud.com/usermanual-obs/obs_03_1003.html)。
#### 与PUT上传的区别
PUT上传中参数通过请求头域传递；POST上传则作为消息体中的表单域传递。关于PUT上传的更多详细信息，请参考[PUT上传](https://support.huaweicloud.com/api-obs/obs_04_0080.html)。
PUT上传需在URL中指定对象名；POST上传提交的URL为桶域名，无需指定对象名。两者的请求行分别为：
```
PUT /ObjectName HTTP/1.1
```
```
POST / HTTP/1.1
```
#### 与其他功能结合使用
- [多版本]
  如果桶的多版本状态是开启的，系统会自动为对象生成一个唯一的版本号；如果桶的多版本状态是暂停的，则系统生成的对象版本号为**null** ，并由响应报头x-obs-version-id返回该版本号。关于桶的多版本状态，参见[设置桶的多版本状态-SetBucketVersioning](https://support.huaweicloud.com/api-obs/obs_04_0037.html)。
- [WORM]
  如果桶的WORM开关是开启的，则可以为对象配置WORM。您可以通过携带元素x-obs-object-lock-mode和x-obs-object-lock-retain-until-date在上传对象的同时指定对象的保护策略，如果您不携带这些元素，但配置了桶级默认WORM策略，则新上传的对象会自动应用默认策略。您还可以在上传后配置或修改对象级WORM保护策略。
  ![](https://support.huaweicloud.com/api-obs/public_sys-resources/note_3.0-zh-cn.png)
  在桶的WORM开关开启时，系统会自动打开多版本功能。WORM保护是基于对象版本号的，配置WORM的版本受到WORM保护，没有配置WORM的版本可正常删除。例如，test.txt 001受到WORM保护。此时再次上传同名文件，产生新的对象版本test.txt 002，test.txt 002并未配置WORM，那么test.txt 002就不受保护可以正常删除。当您下载对象时，不指定版本号下载的是最新对象，也就是test.txt 002。
#### 接口约束
**大小及数量限制：**
- POST上传可以上传小于5GB的文件，超过5 GB的文件上传请使用[6.10.4多段上传](https://support.huaweicloud.com/api-obs/obs_04_0096.html)。
- 您可以通过设置桶配额限制单个桶上传对象的总容量，详情请参见[设置桶配额-SetBucketQuota](https://support.huaweicloud.com/api-obs/obs_04_0052.html)。
**命名限制：**
- 对象名命名规则详见[对象命名规则](https://support.huaweicloud.com/usermanual-obs/obs_41_0015.html)。同一个桶中存储的对象名是唯一的。
- 对象名中包含[特殊字符](https://support.huaweicloud.com/usermanual-obs/obs_41_0015.html)时需要进行URL编码，例如：#obj需要编码为%23obj。
 
#### 授权信息
您必须是桶拥有者或拥有POST上传的权限，才能调用本接口，建议使用IAM或桶策略进行授权。了解更多OBS授权方式请参见[OBS不同权限控制方式的区别](https://support.huaweicloud.com/perms-cfg-obs/obs_40_0001.html)。
- 如果使用**IAM授权** ，那么请在"角色与策略授权"、"身份策略授权"两种IAM授权方式中选择一种，并配置相应权限：
  - 如果使用**角色与策略授权** （旧版IAM，即IAM v3接口），需具备**obs:object:PutObject** 权限，授权操作请参见[创建IAM自定义策略](https://support.huaweicloud.com/usermanual-iam/iam_01_0605.html)。
  
  - 如果使用**身份策略授权** （新版IAM，即IAM v5接口），如下表所示，需具备**obs:object:putObject** 权限，授权操作请参见[创建IAM自定义身份策略](https://support.huaweicloud.com/usermanual-iam5/iam_01_0917.html)。
    
    | 授权项 Action | 访问级别 Access Level | 资源类型（\*为必须） Resource Type (\*: required) | [条件键](https://support.huaweicloud.com/api-obs/obs_04_0112.html#ZH-CN_TOPIC_0000002375307974__condition_table) Condition Key                                                                                                                                                                                                                                                                                                                                                                                     | [别名](https://support.huaweicloud.com/iam5_faq/iam_01_1103.html) Alias | 依赖的授权项 Dependencies                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    |:---|:---|:---|:---|:---|:---|
    | obs:object:putObject                                | Permission_management                                      | object \*                                                                        | [g:EnterpriseProjectId](https://support.huaweicloud.com/usermanual-iam5/iam_01_0934.html#section2)                                                                                                                                                                                                                                                                                                                                                                                                                                                      | -                                                                                                            | - kms:cmk:create  - kms:cmk:list  - kms:cmk:createDataKey  - functiongraph:function:invokeAsync  - functiongraph:workflow:invoke  - smn:topic:publish   |
    | obs:object:putObject                                | Permission_management                                      | -                                                                                | - obs:EpochTime  - obs:SourceIp  - obs:TlsVersion  - obs:CustomDomain  - obs:x-obs-acl   | -                                                                                                            | - kms:cmk:create  - kms:cmk:list  - kms:cmk:createDataKey  - functiongraph:function:invokeAsync  - functiongraph:workflow:invoke  - smn:topic:publish   |
       
    
   
- 如果使用**桶策略** 进行授权，需具备**obs:object:PutObject** 权限，具体操作请参见[自定义创建桶策略](https://support.huaweicloud.com/usermanual-obs/obs_03_0123.html)。
 
#### URI
POST /
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-obs/obs_04_0006.html)。调用前需要先[计算API签名](https://support.huaweicloud.com/api-obs/obs_04_0009.html)，并将签名添加到请求中。
您还可以使用[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/OBS/doc?api=UploadObject)在线调试接口。
#### 请求消息样式
```
POST / HTTP/1.1 
Host: bucketname.obs.cn-north-4.myhuaweicloud.com 
User-Agent: browser_data
Accept: file_types
Accept-Language: Regions
Accept-Encoding: encoding
Accept-Charset: character_set
Keep-Alive: 300 
Connection: keep-alive 
Content-Type: multipart/form-data; boundary=9431149156168 
Content-Length: length
--9431149156168 
Content-Disposition: form-data; name="key" 
acl 
--9431149156168 
Content-Disposition: form-data; name="success_action_redirect"
 
success_redirect 
--9431149156168 
Content-Disposition: form-data; name="content-Type" 
content_type 
--9431149156168 
Content-Disposition: form-data; name="x-obs-meta-uuid" 
uuid 
--9431149156168 
Content-Disposition: form-data; name="x-obs-meta-tag" 
metadata 
--9431149156168 
Content-Disposition: form-data; name="AccessKeyId" 
access-key-id 
--9431149156168 
Content-Disposition: form-data; name="policy" 
encoded_policy 
--9431149156168 
Content-Disposition: form-data; name="signature" 
signature= 
--9431149156168 
Content-Disposition: form-data; name="file"; filename="MyFilename" 
Content-Type: image/jpeg 
file_content 
--9431149156168 
Content-Disposition: form-data; name="submit" 
Upload to OBS 
--9431149156168--
```
#### URI参数（URI Parameters）
该请求消息中不使用参数。
#### 请求头参数（Request headers）
该请求使用公共的消息头，具体请参见[表3](https://support.huaweicloud.com/api-obs/obs_04_0007.html#ZH-CN_TOPIC_0136436606__table25197309)。
如果想要获取CORS配置信息，则需要使用的消息头如下[表1]所示。
 表1POST上传的CORS请求头参数 
| **消息头名称**                      | **消息头类型** | **是否必选** | **描述**                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| Origin                         | String    | 是        | **参数解释：** 预请求指定的跨域请求Origin（通常为域名）。 **约束限制：** 无 **取值范围：** 符合http协议的该头域的取值。 **默认取值：** 无   |
| Access-Control-Request-Headers | String    | 否        | **参数解释：** 实际请求可以带的HTTP头域，可以带多个头域。 **约束限制：** 无 **取值范围：** 符合http协议的该头域的取值。 **默认取值：** 无 |
   
![](https://support.huaweicloud.com/api-obs/public_sys-resources/note_3.0-zh-cn.png)
配置后如果仍然提示跨域，请参考[为什么配置了跨域资源共享（CORS）仍然报错](https://support.huaweicloud.com/obs_faq/obs_faq_0163.html)处理。
#### 请求体参数（Request body）
该请求消息的消息元素以表单形式组织，表单字段的具体含义如[表2]所示。
 表2请求消息表单元素 
| **元素名称**                                        | **元素类型**     | **是否必选**                                     | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| file                                            | 二进制或文本类型     | 是                                            | **参数解释：** 上传的对象内容。文件名与文件路径均会被忽略，不会作为对象名称。对象名称是另一参数key的值。 **约束限制**： - 此参数必须为最后一个参数，否则此参数之后的参数会被丢弃。  - 请求中必须包含且仅包含一个 file参数（多传无效）。该参数必须指定filename属性，否则将导致上传失败。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| key                                             | String       | 是                                            | **参数解释：** 通过此请求创建的对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径，路径中不包含桶名。 例如，您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中，对象名为folder/test.txt。 **约束限制：** 参见[对象概述](https://support.huaweicloud.com/usermanual-obs/obs_41_0015.html)。 **取值范围：** 长度大于0且不超过1024的字符串。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| AccessKeyId                                     | String       | 是，有条件                                        | **参数解释：** 用来指明请求发起者的访问密钥。 **约束限制**： 如果该请求包括安全策略参数policy或signature时，则必须包括此参数。 **取值范围：** 用户的AK。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| policy                                          | String       | 是，有条件                                        | **参数解释：** 该请求的安全策略描述。 **约束限制**： 当Bucket提供了AccessKeyId（或signature）表单域时，则必须包括此参数。 **取值范围：** 参见[基于浏览器上传的表单中携带签名](https://support.huaweicloud.com/api-obs/obs_04_0012.html)章节中policy格式。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| signature                                       | String       | 是，有条件                                        | **参数解释：** 根据StringToSign计算出的签名字符串。 **约束限制**： 当Bucket提供了AccessKeyId(或policy)表单域时，则必须包括此参数。 **取值范围：** 无 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| token                                           | String       | 否                                            | **参数解释：** 用来统一指明请求发起者的访问密钥、请求签名和请求的安全策略。 **约束限制：** token的优先级高于单独指定的访问密钥、请求签名和请求的安全策略。 示例： HTML中： ``` <input type="text" name="token" value="ak:signature:policy" /> ``` **取值范围：** 满足ak:signature:policy格式的值。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| x-obs-acl                                       | String       | 否                                            | **参数解释：** 创建对象时，可以加上此消息头设置对象的权限控制策略，使用的策略为预定义的常用策略。POST表单中对应的表单域名为"acl"。 示例： POLICY中：{"acl": "public-read" }, HTML中： ``` <input type="text" name="acl" value="public-read" /> ``` **约束限制：** 无 **取值范围：** - private：私有  - public-read：公共读  - public-read-write：公共读写  - public-read-delivered：公共读且可以传递给桶内对象  - public-read-write-delivered：公共读写且可以传递给桶内对象   各策略详细说明见[ACL](https://support.huaweicloud.com/perms-cfg-obs/obs_40_0005.html)章节的"使用头域设置ACL"。 **默认取值：** private                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| x-obs-grant-read                                | String       | 否                                            | **参数解释：** 创建对象时，使用此头域授权domain下所有用户有读对象和获取对象元数据的权限。 示例： POLICY中：{"grant-read": "id=domainId1" }, HTML中： ``` <input type="text" name="grant-read" value="id=domainId1" /> ``` **约束限制**： 如果授权给多个租户，需要通过","分隔。 **取值范围：** domainId需要为正确的租户ID，获取方式请参考[获取账号、IAM用户、项目、用户组、区域、委托方账号ID、委托的名称和ID](https://support.huaweicloud.com/api-obs/obs_04_0117.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| x-obs-grant-read-acp                            | String       | 否                                            | **参数解释：** 创建对象时，使用此头域授权domain下所有用户有获取对象ACL的权限。 示例： POLICY中：{"grant-read-acp": "id=domainId1" }, HTML中： ``` <input type="text" name="grant-read-acp" value="id=domainId1" /> ``` **约束限制：** 无 **取值范围：** domainId需要为正确的租户ID，获取方式请参考[获取账号、IAM用户、项目、用户组、区域、委托方账号ID、委托的名称和ID](https://support.huaweicloud.com/api-obs/obs_04_0117.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| x-obs-grant-write-acp                           | String       | 否                                            | **参数解释：** 创建对象时，使用此头域授权domain下所有用户有写对象ACL的权限。 示例： POLICY中：{"grant-write-acp": "id=domainId1" }, HTML中： ``` <input type="text" name="grant-write-acp" value="id=domainId1" /> ``` **约束限制：** 无 **取值范围：** domainId需要为正确的租户ID，获取方式请参考[获取账号、IAM用户、项目、用户组、区域、委托方账号ID、委托的名称和ID](https://support.huaweicloud.com/api-obs/obs_04_0117.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| x-obs-grant-full-control                        | String       | 否                                            | **参数解释：** 创建对象时，使用此头域授权domain下所有用户有读对象、获取对象元数据、获取对象ACL、写对象ACL的权限。 示例： POLICY中：{"grant-full-control": "id=domainId1" }, HTML中： ``` <input type="text" name="grant-full-control" value="id=domainId1" /> ``` **约束限制：** 无 **取值范围：** domainId需要为正确的租户ID，获取方式请参考[获取账号、IAM用户、项目、用户组、区域、委托方账号ID、委托的名称和ID](https://support.huaweicloud.com/api-obs/obs_04_0117.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| x-obs-storage-class                             | String       | 否                                            | **参数解释：** 创建对象时，可以加上此头域设置对象的存储类型。 示例： POLICY中：{"storage-class": "STANDARD" }, HTML中： ``` <input type="text" name="x-obs-storage-class" value="STANDARD" /> ``` **约束限制：** 设置该参数的值时请注意大小写敏感。 **取值范围：** - STANDARD：标准存储  - WARM：低频访问存储  - COLD：归档存储  - DEEP_ARCHIVE：深度归档存储 注意： 深度归档数据存储不会跨境传输。    **默认取值：** 如果未设置此头域，则以桶的默认存储类型作为对象的存储类型。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Cache-Control                                   | String       | 否                                            | **参数解释：** 该参数为HTTP标准消息头，OBS将该参数记录下来，当用户下载此对象或Head Object时，在响应消息头中携带该参数。 **约束限制：** 无 **取值范围：** 参见http协议的Cache-Control头域。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Content-Type                                    | String       | 否                                            | **参数解释：** 该参数为HTTP标准消息头，OBS将该参数记录下来，当用户下载此对象或Head Object时，在响应头 (Response Headers)中携带该参数。 示例： POLICY中：\["starts-with", "$Content-Type", "text/"\], HTML中： ``` <input type="text" name="content-type" value="text/plain" /> ``` **约束限制：** 无 **取值范围：** Content-type的常见取值参见[常见的Content-Type类型](https://support.huaweicloud.com/usermanual-obs/obs_03_0324.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Content-Disposition                             | String       | 否                                            | **参数解释：** 该参数为HTTP标准消息头，OBS将该参数记录下来，当用户下载此对象或Head Object时，在响应头 (Response Headers)中携带该参数。 **约束限制：** 无 **取值范围：** 参见http协议的Content-Disposition头域。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Content-Encoding                                | String       | 否                                            | **参数解释：** 该参数为HTTP标准消息头，OBS将该参数记录下来，当用户下载此对象或Head Object时，在响应头 (Response Headers)中携带该参数。 **约束限制：** 无 **取值范围：** 参见http协议的Content-Encoding头域。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Expires                                         | String       | 否                                            | **参数解释：** 该参数为HTTP标准消息头，OBS将该参数记录下来，当用户下载此对象或Head Object时，在响应头 (Response Headers)中携带该参数。 **约束限制：** 无 **取值范围：** 参见http协议的Expires头域。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| success_action_redirect                         | String       | 否                                            | **参数解释：** 用于指定当此次请求操作成功响应后的重定向的地址。 - 如果此参数值有效且操作成功，响应码为303，Location头域由此参数以及桶名、对象名、对象的ETag组成。  - 如果此参数值无效，则OBS忽略此参数的作用，Location头域为对象地址，响应码根据操作成功或失败正常返回。   示例： POLICY中：{"success_action_redirect": "http://123458.com"}, HTML中： ``` <input type="text" name="success_action_redirect" value="http://123458.com" /> ``` **约束限制：** 需要http和https开头。 **取值范围：** URL **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| x-obs-meta-\*                                   | String       | 否                                            | **参数解释：** 创建对象时，可以在HTTP请求中加入"x-obs-meta-"消息头或以"x-obs-meta-"开头的消息头，用来加入自定义的元数据，以便对对象进行自定义管理。当用户获取此对象或查询此对象元数据时，加入的自定义元数据将会在返回消息的消息头中出现。更多说明详见[对象自定义元数据介绍](https://support.huaweicloud.com/usermanual-obs/obs_03_0324.html)。 示例： POLICY中：{" x-obs-meta-test ": " test metadata " }, HTML中： ``` <input type="text" name=" x-obs-meta-test " value=" test metadata " /> ``` **约束限制：** 无 **取值范围：** 详见[对象自定义元数据介绍](https://support.huaweicloud.com/usermanual-obs/obs_03_0324.html)。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| x-obs-persistent-headers                        | String       | 否                                            | **参数解释：** 创建对象时，可以在HTTP请求中加入"x-obs-persistent-headers"消息头，用来加入一个或多个自定义的响应头，当用户获取此对象或查询此对象元数据时，加入的自定义响应头将会在返回消息的头域中出现。 **约束限制**： - 通过该方式指定的自定义响应头不能以"x-obs-"为前缀，比如可以指定"key1"，但是不能指定"x-obs-key1"。  - 不能指定http标准头，例如host/content-md5/origin/range/Content-Disposition等。  - 此头域和自定义元数据总长度不能超过8KB。  - 如果传入相同key，将value以","拼接后放入同一个key中返回。  - 如果value解码后存在非US-ASCII值或不可识别字符，则服务端只会作为字符串处理并通过"?UTF-8?B?\<(str)\>?="包装，而不会做解码，例如key1:abbc，会返回key1: =?UTF-8?B?abbc?=。  - value不支持包含的字符"空格"、"="、","、";"、":"、"."，如果需要包含，请使用URL编码或者Base64编码。  - 格式：x-obs-persistent-headers: key1:base64_encode(value1),key2:base64_encode(value2).... 说明：其中key1/key2等为自定义header，如果含有非ASCII码或不可识别字符，可以采用URL编码或者Base64编码，服务端只会作为字符串处理，不会做解码。value1/value2等为对应自定义header的值，base64_encode指做base64编码，即将自定义header和对应值的base64编码作为一个key-value对用":"连接，然后用","将所有的key-value对连接起来，放在x-obs-persistent-headers这个header中即可，服务端会对上传的value做解码处理。 示例： POLICY中：{"x-obs-persistent-headers": "key1:dmFsdWUx,key2:dmFsdWUy" }, HTML中： ``` <input type="text" name="x-obs-persistent-headers" value="key1:dmFsdWUx,key2:dmFsdWUy" /> ``` 下载此对象或获取此对象元数据时：返回两个头域分别为"key1:value1"与"key2:value2"。    **取值范围：** 无 **默认取值：** 无 |
| success_action_status                           | String       | 否                                            | **参数解释：** 这个参数指定成功响应的状态码。 示例： POLICY中：\["starts-with", "$success_action_status", ""\], HTML中： ``` <input type="text" name="success_action_status" value="200" /> ``` **约束限制：** - 如果此参数值被设定为200或204，OBS响应消息中body为空。  - 如果此参数值被设定为201，则OBS响应消息中包含一个XML文档描述此次请求的响应。  - 当请求不携带此参数或参数无效时，OBS响应码为204。   **取值范围：** - 200：请求成功。  - 201：请求成功并创建了新的资源。  - 204：请求成功，但未返回内容。   **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| x-obs-website-redirect-location                 | String       | 否                                            | **参*数解释：*** *当桶设置了Website配置，可以将获取这个对象的请求重定向到桶内另一个对象或一个外部的URL，OBS将这个值从头域中取出，保存在对象的元数据中。* ***约束限制**：* *必须以"/"、"http://"或"https://"开头，长度不超过2K。* ***取值范围：*** *无* ***默认取值：*** *无*                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| x-obs-server-side-encryption                    | String       | 否。当使用SSE-KMS方式时，必选。                          | **参数解释：** 配置服务端加密方式。示例：x-obs-server-side-encryption：kms **约束限制：** 无 **取值范围：** - kms：使用SSE-KMS加密方式  - AES256：使用SSE-OBS加密方式，且使用AES256算法   **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| x-obs-server-side-data-encryption               | String       | 否                                            | **参数解释：** 该头域表示对象使用的数据加密算法。示例：x-obs-server-side-data-encryption：SM4 **约束限制：** 仅在SSE-KMS加密方式下使用该头域。不携带该头域则使用AES256算法。 **取值范围：** SM4：使用SM4算法 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| x-obs-server-side-encryption-kms-key-id         | String       | 否                                            | **参数描述：** 当加密方式为SSE-KMS且使用指定密钥加密时，需输入密钥ID。密钥ID获取方法请参见[查看密钥](https://support.huaweicloud.com/usermanual-dew/dew_01_0179.html)。 **约束限制：** 当您设置了x-obs-server-side-encryption头域且赋值为"kms"，即选择kms加密方式时，才能使用该头域指定加密密钥。 **默认取值：** 当您选择使用kms加密方式，但未设置此头域时，默认的主密钥将会被使用。如果默认主密钥不存在，系统将默认创建并使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| x-obs-server-side-encryption-bucket-key-enabled | String       | 否                                            | **参数解释：** SSE-KMS桶密钥功能开关。 **约束限制：** 当您设置本头域为"true"时，必须同时设置本接口的另一个头域x-obs-server-side-encryption-kms-key-id以指定密钥ID。 **取值范围：** - true：开启桶密钥。  - false：关闭桶密钥。   **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| x-obs-server-side-encryption-customer-algorithm | String       | 否。当使用SSE-C方式时，必选。                            | **参数解释：** 该头域表示加密使用的算法。 示例：x-obs-server-side-encryption-customer-algorithm：AES256 **约束限制：** - 仅在SSE-C加密方式下使用该头域。  - 需要和x-obs-server-side-encryption-customer-key， x-obs-server-side-encryption-customer-key-MD5一起使用。   **取值范围：** AES256 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| x-obs-server-side-encryption-customer-key       | String       | 否。当使用SSE-C方式时，必选。                            | **参数解释：** 该头域表示加密使用的密钥。该密钥用于加密对象。 示例：x-obs-server-side-encryption-customer-key:K7QkYpBkM5+hca27fsNkUnNVaobncnLht/rCB2o/9Cw= **约束限制：** - 仅在SSE-C加密方式下使用该头域。  - 该头域由256-bit的密钥经过base64-encoded得到，需要和x-obs-server-side-encryption-customer-algorithm，x-obs-server-side-encryption-customer-key-MD5一起使用。   **取值范围：** 无 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| x-obs-server-side-encryption-customer-key-MD5   | String       | 否。当使用SSE-C方式时，必选。                            | **参数解释：** 该头域表示加密使用的密钥的MD5值。MD5值用于验证密钥传输过程中没有出错。 示例：x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ== **约束限制：** - 仅在SSE-C加密方式下使用该头域。  - 该头域由密钥的128-bit MD5值经过base64-encoded得到，需要和x-obs-server-side-encryption-customer-algorithm，x-obs-server-side-encryption-customer-key一起使用。   **取值范围：** 密钥的MD5值。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| x-obs-expires                                   | Integer      | 否                                            | **参数解释：** 表示对象的过期时间，单位是天。过期之后对象会被自动删除。（从对象创建时间开始计算）。 此字段对于每个对象支持上传时配置，也支持后期通过修改元数据接口修改。 示例：x-obs-expires:3 **约束限制：** 设置的天数计算出的过期时间不能早于当前时间，如10天前上传的对象，不能设置小于10的值。 **取值范围：** 大于0的整数值。 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| x-obs-object-lock-mode                          | String       | 否, 携带x-obs-object-lock-retain-until-date时必带。 | **参数解释：** 要应用于此对象的WORM模式。 示例：x-obs-object-lock-mode:COMPLIANCE **约束限制：** 目前仅支持COMPLIANCE，即合规模式。 该参数需要和x-obs-object-lock-retain-until-date一同使用。 **取值范围：** COMPLIANCE **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| x-obs-object-lock-retain-until-date             | String       | 否，携带x-obs-object-lock-mode时必带。               | **参数解释：** 此对象的WORM策略过期的截止时间。 示例：x-obs-object-lock-retain-until-date:2015-07-01T04:11:15.297Z **约束限制**： 格式要求为UTC时间，需要大于当前时间，并符合ISO 8601标准。如：2015-07-01T04:11:15.297Z 该参数需要和x-obs-object-lock-mode一同使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| x-obs-checksum-crc64ecma                        | UnsignedLong | 否                                            | **参数解释：** 按照ECMA-182标准计算出消息体的crc64值，采用64位无符号数编码；使用该头域服务端会进行数据一致性校验。 - 如果服务端计算出的crc64值与头域携带的crc64值相同，响应码为200  - 如果服务端计算出的crc64值与头域携带的crc64值不符，响应码为400   示例：x-obs-checksum-crc64ecma: 11051210869376104954 **约束限制：** 无 **取值范围：** 无 **默认取值：** 无                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   
#### 响应消息样式
```
HTTP/1.1 status_code
Content-Type: application/xml 
Location: location
Date: date
ETag: etag
```
#### 响应头 (Response Headers)
该请求的响应消息使用公共响应头，具体请参考[表1](https://support.huaweicloud.com/api-obs/obs_04_0013.html#ZH-CN_TOPIC_0173612084__d0e686)。
除公共响应头之外，还可能使用如[表3]中的消息头。
 表3响应头 
| **消息头名称**                                       | **消息头类型** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| x-obs-version-id                                | String    | **参数解释：** 对象的版本号。 - 如果桶的多版本状态为开启，则会返回对象的版本号。  - 如果桶的多版本状态为暂停，则会返回null。   **取值范围：** 不涉及。                              |
| Access-Control-Allow-Origin                     | String    | **参数解释：** 当桶设置了CORS配置，如果请求的Origin满足服务端的CORS配置，则在响应中包含这个Origin。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                      |
| Access-Control-Allow-Headers                    | String    | **参数解释：** 当桶设置了CORS配置，如果请求的headers满足服务端的CORS配置，则在响应中包含这个headers。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                     |
| Access-Control-Max-Age                          | Integer   | **参数解释：** 当桶设置了CORS配置，服务端CORS配置中的MaxAgeSeconds。默认取值为3000。 **取值范围：** 大于等于0的整型数，单位：秒。                                                                                                                                                                                                                                              |
| Access-Control-Allow-Methods                    | String    | **参数解释：** 当桶设置了CORS配置，如果请求的Access-Control-Request-Method满足服务端的CORS配置，则在响应中包含这条rule中的Methods。 **约束限制：** 无                                                                                                                                                                                                                        |
| Access-Control-Expose-Headers                   | String    | **参数解释：** 桶CORS规则中的ExposeHeader。ExposeHeader是指CORS规则允许响应中可返回的附加头域，给客户端提供额外的信息。默认情况下浏览器只能访问以下头域：Content-Length、Content-Type，如果需要访问其他头域，需要在附加头域中配置。 不支持\*、\&、:、\<、空格以及中文字符。 **取值范围：** 无                                                                                                    |
| x-obs-server-side-encryption                    | String    | **参数解释：** 服务端加密方式。示例：x-obs-server-side-encryption：kms **取值范围：** - kms：使用SSE-KMS加密方式  - AES256：使用SSE-OBS加密方式，且使用AES256算法   |
| x-obs-server-side-data-encryption               | String    | **参数解释：** 该头域表示对象使用的数据加密算法。仅在SSE-KMS加密方式下使用该头域，如果开启SSE-KMS但不返回该头域则表明使用AES256算法。 示例：x-obs-server-side-data-encryption：SM4 **取值范围：** SM4：使用SM4算法                                                                                                                                     |
| x-obs-server-side-encryption-kms-key-id         | String    | **参数解释：** 加密方式为SSE-KMS且使用指定密钥加密时，需输入密钥ID。当您设置了x-obs-server-side-encryption头域且赋值为"kms"，即选择kms加密方式时，才能使用该头域指定加密密钥。如果未设置此头域，默认的主密钥将会被使用。如果默认主密钥不存在，系统将默认创建并使用。密钥ID获取方法请参见[查看密钥](https://support.huaweicloud.com/usermanual-dew/dew_01_0179.html)。 **取值范围：** 不涉及。                                                                    |
| x-obs-sse-kms-key-project-id                    | String    | **参数解释：** 加密方式为SSE-KMS且使用自定义KMS密钥加密时，返回KMS主密钥所属的项目ID（非企业项目ID）。 **取值范围：** x-obs-server-side-encryption-kms-key-id指定的KMS主密钥所属的项目ID（非企业项目ID）。                                                                                                                                                                                       |
| x-obs-server-side-encryption-customer-algorithm | String    | **参数解释：** 该头域表示加密使用的算法。如果服务端加密是SSE-C方式，响应包含该头域。 示例：x-obs-server-side-encryption-customer-algorithm：AES256 **取值范围：** AES256                                                                                                                                                                   |
| x-obs-server-side-encryption-customer-key-MD5   | String    | **参数解释：** 该头域表示加密使用的密钥的MD5值。如果服务端加密是SSE-C方式，响应包含该头域。 示例：x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ== **取值范围：** 密钥的MD5值。                                                                                                                                         |
   
#### 响应消息元素
该请求的响应消息中不带消息元素。
#### 错误响应消息
无特殊错误，所有错误已经包含在[错误码概述](https://support.huaweicloud.com/api-obs/obs_04_0115.html)中。
#### 请求示例：普通POST上传
```
POST / HTTP/1.1
Date: Wed, 01 Jul 2015 04:15:23 GMT
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
Content-Type: multipart/form-data; boundary=7db143f50da2
Content-Length: 2424
Origin: www.example.com
Access-Control-Request-Headers:acc_header_1
--7db143f50da2
Content-Disposition: form-data; name="key"
object01
--7db143f50da2
Content-Disposition: form-data; name="acl"
public-read
--7db143f50da2 
Content-Disposition: form-data; name="content-type"
text/plain
--7db143f50da2
Content-Disposition: form-data; name="expires"
Wed, 01 Jul 2015 04:16:15 GMT
--7db143f50da2
Content-Disposition: form-data; name="AccessKeyId"
14RZT432N80TGDF2Y2G2
--7db143f50da2
Content-Disposition: form-data; name="policy"
ewogICJleHBpcmF0aW9uIjogIjIwMTUtMDctMDFUMTI6MDA6MDAuMDAwWiIsCiAgImNvbmRpdGlvbnMiOiBbCiAgICB7ImJ1Y2tldCI6ICJleG1hcGxlYnVja2V0In0sCiAgICB7ImFjbCI6ICJwdWJsaWMtcmVhZCJ9LAogICAgeyJFeHBpcmVzIjogIjEwMDAifSwKICAgIFsiZXEiLCAiJGtleSIsICJvYmplY3QwMSJdLAogICAgWyJzdGFydHMtd2l0aCIsICIkQ29udGVudC1UeXBlIiwgInRleHQvIl0KICBdCn0=
--7db143f50da2
Content-Disposition: form-data; name="signature"
Vk6rwO0Nq09BLhvNSIYwSJTRQ+k=
--7db143f50da2
Content-Disposition: form-data; name="x-obs-persistent-headers"
 
test:dmFsdWUx
--7db143f50da2
Content-Disposition: form-data; name="x-obs-grant-read"
 
id=52f24s3593as5730ea4f722483579xxx
--7db143f50da2
Content-Disposition: form-data; name="x-obs-server-side-encryption"
kms
--7db143f50da2
Content-Disposition: form-data; name="x-obs-website-redirect-location"
 
http://www.example.com/
--7db143f50da2
Content-Disposition: form-data; name="file"; filename="C:\Testtools\UpLoadFiles\object\1024Bytes.txt"
Content-Type: text/plain
01234567890
--7db143f50da2
Content-Disposition: form-data; name="submit"
Upload
--7db143f50da2--
```
#### 响应示例：普通POST上传
桶配置cors后，响应会包含Access-Control-\*的信息。
```
HTTP/1.1 204 No Content
x-obs-request-id: 90E2BA00C26C00000133B442A90063FD
x-obs-id-2: OTBFMkJBMDBDMjZDMDAwMDAxMzNCNDQyQTkwMDYzRkRBQUFBQUFBQWJiYmJiYmJi
Access-Control-Allow-Origin: www.example.com
Access-Control-Allow-Methods: POST,GET,HEAD,PUT
Access-Control-Allow-Headers: acc_header_01
Access-Control-Max-Age: 100
Access-Control-Expose-Headers: exp_header_01
Content-Type: text/xml
Location: http://examplebucket.obs.cn-north-4.myhuaweicloud.com/object01
Date: Wed, 01 Jul 2015 04:15:23 GMT
ETag: "ab7abb0da4bca5323ab6119bb5dcd296"
```
#### 请求示例：带x-obs-acl头域并指定存储类型
**带x-obs-acl头域并指定存储类型，重定向头域，上传对象**
编码前，policy的内容为
```
{
    "expiration":"2018-07-17T04:54:35Z",
    "conditions":[
        {
            "content-type":"text/plain"
        },
        {
            "x-obs-storage-class":"WARM"
        },
        {
            "success_action_redirect":"http://www.example.com"
        },
        {
            "x-obs-acl":"public-read"
        },
        [
            "starts-with",
            "$bucket",
            ""
        ],
        [
            "starts-with",
            "$key",
            ""
        ]
    ]
}
```
请求示例：
```
POST / HTTP/1.1
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
Accept-Encoding: identity
Content-Length: 947
Content-Type: multipart/form-data; boundary=9431149156168
User-Agent: OBS/Test
--9431149156168
Content-Disposition: form-data; name="x-obs-acl"
public-read
--9431149156168
Content-Disposition: form-data; name="AccessKeyId"
H4IPJX0TQTHTHEBQQCEC
--9431149156168
Content-Disposition: form-data; name="key"
my-obs-object-key-demo
--9431149156168
Content-Disposition: form-data; name="signature"
WNwv8P1ZiWdqPQqjXeLmAfzPDAI=
--9431149156168
Content-Disposition: form-data; name="policy"
eyJleHBpcmF0aW9uIjoiMjAxOC0wNy0xN1QwODozNDoyM1oiLCAiY29uZGl0aW9ucyI6W3siY29udGVudC10eXBlIjoidGV4dC9wbGFpbiJ9LHsieC1vYnMtYWNsIjoicHVibGljLXJlYWQifSxbInN0YXJ0cy13aXRoIiwgIiRidWNrZXQiLCAiIl0sWyJzdGFydHMtd2l0aCIsICIka2V5IiwgIiJdXX0=
--9431149156168
Content-Disposition: form-data; name="content-type"
text/plain
--9431149156168
Content-Disposition: form-data; name="file"; filename="myfile"
Content-Type: text/plain
c2c6cd0f-898e-11e8-aab6-e567c91fb541
52b8e8a0-8481-4696-96f3-910635215a78
--9431149156168--
```
#### 响应示例：带x-obs-acl头域并指定存储类型
```
HTTP/1.1 204 No Content
Server: OBS
Location: http://examplebucket.obs.cn-north-4.myhuaweicloud.com/my-obs-object-key-demo
ETag: "17a83fc8d431273405bd266114b7e034"
x-obs-request-id: 5DEB00000164A728A7C7F4E032214CFA
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCSwj2PcBE0YcoLHUDO7GSj+rVByzjflA
Date: Tue, 17 Jul 2018 07:33:36 GMT
```
#### 请求示例：使用token进行鉴权
```
POST / HTTP/1.1
Content-Type:multipart/form-data; boundary=9431149156168
Content-Length: 634
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
 
--9431149156168
Content-Disposition: form-data; name="key"
obj01
--9431149156168
Content-Disposition: form-data; name="token"
UDSIAMSTUBTEST002538:XsVcTzR2/A284oE4VH9qPndGcuE=:eyJjb25kaXRpb25zIjogW3siYnVja2V0IjogInRlc3QzMDAzMDU4NzE2NjI2ODkzNjcuMTIifSwgeyJDb250ZW50LVR5cGUiOiAiYXBwbGljYXRpb24veG1sIn0sIFsiZXEiLCAiJGtleSIsICJvYmoudRh0Il1dLCAiZXhwaXGhdGlvbiI6ICIyMDIyLTA5LTA5VDEyOjA5OjI3WiJ9
--9431149156168
Content-Disposition: form-data; name="file"; filename="myfile"
Content-Type: text/plain
01234567890
--9431149156168--
```
#### 响应示例：使用token进行鉴权
```
HTTP/1.1 204 No Content
Server: OBS
Location: http://examplebucket.obs.cn-north-4.myhuaweicloud.com/my-obs-object-key-demo
ETag: "7eda50a430fed940023acb9c4c6a2fff"
x-obs-request-id: 000001832010443D80F30B649B969C47
x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCTj0yO9KJd5In+i9pzTgCDVG9vMnk7O/
Date: Fri, 09 Sep 2022 02:24:40 GMT
```
#### 请求示例：设置对象过期时间
```
POST / HTTP/1.1 
Date: Wed, 01 Jul 2015 04:15:23 GMT 
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com 
Content-Type: multipart/form-data; boundary=148828969260233905620870
Content-Length: 1639 
Origin: www.example.com 
Access-Control-Request-Headers:acc_header_1 
 
--148828969260233905620870 
Content-Disposition: form-data; name="key" 
 
object01
--148828969260233905620870
Content-Disposition: form-data; name="AccessKeyId"
 
55445349414d5354554254455354303030303033
--148828969260233905620870
Content-Disposition: form-data; name="signature"
 
396246666f6f42793872792f7a3958524f6c44334e4e69763950553d=
--148828969260233905620870
Content-Disposition: form-data; name="policy" 
 
eyJleHBpcmF0aW9uIjoiMjAyNi0xMi0zM1QyMzo1OTo1OVoiLCJjb25kaXRpb25zIjpbeyJidWNrZXQiOiJleGFtcGxlYnVja2V0In0seyJrZXkiOiJvYmplY3QwMSJ9LHsiY29udGVudC10eXBlIjoidGV4dC9wbGFpbiJ9LHsieC1vYnMtZXhwaXJlcyI6IjQifV19
--148828969260233905620870
Content-Disposition: form-data; name="x-obs-expires"
 
4
--148828969260233905620870
Content-Disposition: form-data; name="file"; filename="test.txt"
Content-Type: text/plain 
 
01234567890
--148828969260233905620870
Content-Disposition: form-data; name="submit" 
 
Upload 
--148828969260233905620870--
```
#### 响应示例：设置对象过期时间
```
HTTP/1.1 204 No Content 
Server: OBS 
Date: Thu, 15 Jun 2023 12:39:03 GMT
Connection: keep-alive
Location: http://examplebucket.obs.cn-north-4.myhuaweicloud.com/my-obs-object-key-demo 
x-obs-expiration: expiry-date="Tue, 20 Jun 2023 00:00:00 GMT"
ETag: "d41d8cd98f00b204e9800998ecf8427e"
x-obs-request-id: 00000188BF11049553064911000FC30D
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCSwj2PcBE0YcoLHUDO7GSj+rVByzjflA 
x-forward-status: 0x40020000000001
x-dae-api-type: REST.POST.OBJECT
```
#### 请求示例：指定状态码
**指定成功响应的状态码为200**
```
POST /srcbucket HTTP/1.1
User-Agent: PostmanRuntime/7.26.8
Accept: */*
Postman-Token: 667dcc44-1c48-41ba-9e41-9f87d8975089
Host: obs.cn-north-4.myhuaweicloud.com
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Type: multipart/form-data; boundary=--------------------------285613759795901770404350
Content-Length: 1134
 
----------------------------285613759795901770404350
Content-Disposition: form-data; name="key"
 
obj
----------------------------285613759795901770404350
Content-Disposition: form-data; name="AccessKeyId"
 
XXXXXXXXXXXXXXX000003
----------------------------285613759795901770404350
Content-Disposition: form-data; name="signature"
 
9rc4bVhDPQ7eHtw17hWtYxLnBWU=
----------------------------285613759795901770404350
Content-Disposition: form-data; name="policy"
 
eyJleHBpcmF0aW9uIjoiMjAyNi0xMi0zM1QyMzo1OTo1OVoiLCJjb25kaXRpb25zIjpbeyJidWNrZXQiOiJzcmNidWNrZXQifSx7InN1Y2Nlc19hY3Rpb25fc3RhdHVzIjoiMjAwIn0seyJjb250ZW50LXR5cGUiOiJ0ZXh0L3BsYWluIn0seyJrZXkiOiJvYmoifV19
----------------------------285613759795901770404350
Content-Disposition: form-data; name="success_action_status"
 
200
----------------------------285613759795901770404350
Content-Disposition: form-data; name="file"; filename="test.txt"
Content-Type: text/plain
 
 
----------------------------285613759795901770404350
Content-Disposition: form-data; name="submit"
 
Upload to OBS
----------------------------285613759795901770404350--
```
#### 响应示例：指定状态码
**指定成功响应的状态码为200** **，响应消息**
```
HTTP/1.1 200 OK
Server: OBS
Date: Thu, 15 Jun 2023 13:12:51 GMT
Content-Length: 0
Connection: keep-alive
Location: http://obs.cn-north-4.myhuaweicloud.com/srcbucket/objETag: "d41d8cd98f00b204e9800998ecf8427e"
x-obs-request-id: 00000188BF2FF55F5306426E000FE366
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCScDjcXgZ7oMYSVnZnk4+HrClVwLVPTi
x-forward-status: 0x40020000000001
x-dae-api-type: REST.POST.OBJECT
```
#### 请求示例：上传时配置对象级WORM保护策略
```
POST /srcbucket HTTP/1.1
User-Agent: PostmanRuntime/7.26.8
Accept: */*
Postman-Token: 4c2f4c7e-2e0b-46c0-b1a7-4a5da560b6a1
Host: obs.cn-north-4.myhuaweicloud.com
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Type: multipart/form-data; boundary=--------------------------940435396775653808840608
Content-Length: 1409
 
----------------------------940435396775653808840608
Content-Disposition: form-data; name="key"
 
obj
----------------------------940435396775653808840608
Content-Disposition: form-data; name="AccessKeyId"
 
XXXXXXXXXXXXXXX000003
----------------------------940435396775653808840608
Content-Disposition: form-data; name="signature"
 
X/7QiyMYUvxUWk0R5fToeTcgMMU=
----------------------------940435396775653808840608
Content-Disposition: form-data; name="policy"
 
eyJleHBpcmF0aW9uIjoiMjAyNi0xMi0zM1QyMzo1OTo1OVoiLCJjb25kaXRpb25zIjpbeyJ4LW9icy1vYmplY3QtbG9jay1yZXRhaW4tdW50aWwtZGF0ZSI6IjIwMjItMDktMjVUMTY6MTA6MjUuMjk3WiJ9LHsieC1vYnMtb2JqZWN0LWxvY2stbW9kZSI6IkNPTVBMSUFOQ0UifSx7ImJ1Y2tldCI6InNyY2J1Y2tldCJ9LHsib250ZW50LXR5cGUiOiJ0ZXh0L3BsYWluIn0seyJrZXkiOiJvYmoifV19
----------------------------940435396775653808840608
Content-Disposition: form-data; name="x-obs-object-lock-mode"
 
COMPLIANCE
----------------------------940435396775653808840608
Content-Disposition: form-data; name="x-obs-object-lock-retain-until-date"
 
2022-09-24T16:10:25.297Z
----------------------------940435396775653808840608
Content-Disposition: form-data; name="file"; filename="test.txt"
Content-Type: text/plain
 
 
----------------------------940435396775653808840608
Content-Disposition: form-data; name="submit"
 
Upload to OBS
----------------------------940435396775653808840608--
```
#### 响应示例：上传时配置对象级WORM保护策略
```
HTTP/1.1 204 No Content
Server: OBS
Date: Thu, 15 Jun 2023 13:24:03 GMT
Connection: keep-alive
Location: http://obs.cn-north-4.myhuaweicloud.com/srcbucket/objETag: "d41d8cd98f00b204e9800998ecf8427e"
x-obs-request-id: 00000188BF3A36EE5306427D000FEE0A
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCS/5pj0p0hAQcDVI3B6E5y167zy4eAQv
x-forward-status: 0x40020000000001
x-dae-api-type: REST.POST.OBJECT
```
#### 使用SDK调用接口
建议您使用OBS SDK调用接口。SDK对API进行了封装以简化您的开发工作，直接调用SDK接口函数即可访问OBS，无需手动计算签名。
| [Java](https://support.huaweicloud.com/sdk-java-devg-obs/obs_21_0612.html) | [Python](https://support.huaweicloud.com/sdk-python-devg-obs/obs_22_0907.html) | C不支持 | Go不支持 | [BrowserJS](https://support.huaweicloud.com/sdk-browserjs-devg-obs/obs_24_0512.html) | .NET不支持 | [Android](https://support.huaweicloud.com/sdk-android-devg-obs/obs_26_0412.html) | iOS不支持 | [PHP](https://support.huaweicloud.com/sdk-php-devg-obs/obs_28_0409.html) | [Node.js](https://support.huaweicloud.com/sdk-nodejs-devg-obs/obs_29_0412.html) |
|---|---|---|---|---|---|---|---|---|---|
   
#### 相关文档
- 使用obsutil上传对象，请参见[上传对象](https://support.huaweicloud.com/utiltg-obs/obs_11_0013.html)。
- 使用OBS Browser+上传对象，请参见[上传文件或文件夹](https://support.huaweicloud.com/browsertg-obs/obs_03_1061.html)。
- 了解更多上传方式相关介绍，请参见[表单上传（POST上传）](https://support.huaweicloud.com/usermanual-obs/obs_03_1003.html)。
- API操作涉及的计费项参见[计费项](https://support.huaweicloud.com/price-obs/obs_42_0002.html)。
 
