华为云用户手册

  • 响应消息元素 该请求的响应中以消息元素的形式返回桶的日志信息,元素的具体意义如表1所示。 表1 响应消息元素 名字 描述 BucketLoggingStatus logging状态信息的容器。 类型:Container Agency 产生logging日志桶Owner创建委托OBS上传logging日志的委托名。 类型:String LoggingEnabled 用于logging信息的容器。并且该元素起到对logging配置管理的使能作用(呈现此元素则打开logging配置,否则关闭)。 类型:Container Grant 是被授权者及其权限的容器。 类型:Container Grantee 作为被授权logging权限用户的容器。 类型:Container ID 被授权用户的Domain Id,全局唯一标识。 类型:String Permission 对于一个桶的logging权限来说,owner在创桶时将自动获得对源桶的FULL_CONTROL权限。不同的权限决定了对不同日志的访问限制。 类型:String 权限有效值:FULL_CONTROL | READ | WRITE TargetBucket 在生成日志时,源桶的owner可以指定一个目标桶,将生成的所有日志放到该桶中。在OBS系统中,支持多个源桶生成的日志放在同一个目标桶中,如果这样做,就需要指定不同的TargetPrefix以达到为来自不同源桶的日志分类的目的。 类型:String TargetPrefix 通过该元素可以指定一个前缀给一类日志生成的对象。 类型:String TargetGrants 授权信息的容器。 类型:Container
  • 请求示例 1 2 3 4 5 6 GET /?replication HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: Wed, 27 Jun 2018 13:42:40 +0000 Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jGHviInfRyOkT/EpySpua1hlBuY=
  • 响应消息元素 在此请求返回的响应消息体中包含的配置元素如下描述。 表1 桶的复制配置元素 名称 描述 ReplicationConfiguration 复制规则的容器,最多可以达到100条规则,所有的复制配置大小可达到50KB 。 类型:Container 子节点:Rule 父节点:无 Agency 用户创建的委托名字,最大长度为64字符。 类型:String 父节点:ReplicationConfiguration Rule 一条特定复制规则信息的容器。 复制配置必须至少配置一条规则,最多能达到100条规则。 类型:Container 父节点:ReplicationConfiguration ID 规则的特殊辨识符,最大长度为255字符。 类型:String 父节点:Rule Status 如果Status为Disabled,这条规则会被忽略。 类型:String 父节点:Rule 有效值:Enabled,Disabled Prefix 对象键值名的前缀,适配于一个或者多个对象。如果前缀配置为空,则跨区域复制规则将作用于整个桶。 最大前缀长度可达到为1024个字节,不支持重叠的前缀。 类型:String 父节点:Rule Destination 目标桶信息的容器。 类型:Container 父节点:Rule Bucket 存储被规则标识的对象副本的桶名称。 如果在复制配置中有多条规则,这些规则必须都要标识同一个桶作为目标桶。 类型:String 父节点:Destination StorageClass 对象的存储类型。 类型:String 父节点:Destination 有效值:STANDARD|WARM|COLD HistoricalObjectReplication 历史对象复制关键字,如果为Enabled,会复制符合这条规则的历史对象。 类型:String 父节点:Rule 有效值:Enabled,Disabled(若不设置,则默认为Disabled)
  • 响应消息元素 该请求的响应消息中通过返回消息元素来返回合并段的结果,元素的具体意义如表4所示。 表4 响应消息元素 元素 描述 Location 合并后得到对象的路径。 类型:String Bucket 合并段所在的桶。 类型:String EncodingType 对象Key的编码类型。如果Key包含xml 1.0标准不支持的控制字符,可通过设置encoding-type对响应中的Key进行编码。 类型:String 可选值:url。 Key 合并得到对象的key。 类型:String ETag 根据各个段的ETag计算得出的结果,是对象内容的唯一标识。 类型:String
  • 错误响应消息 如果没有消息体,OBS返回400 Bad Request。 如果消息体格式不正确,OBS返回400 Bad Request。 消息体中如果段信息未按照段序号升序排列,OBS返回400 Bad Request,错误码为InvalidPartOrder。 如果AccessKey或签名无效,OBS返回403 Forbidden, 错误码为AccessDenied。 如果请求的桶不存在,OBS返回404 Not Found,错误码为NoSuchBucket。 如果请求的多段上传任务不存在,OBS返回404 Not Found,包含错误信息NoSuchUpload。 如果用户不是该任务的发起者(initiator),OBS返回403 Forbidden,错误码为AccessDenied。 在合并段时如果请求段列表中包含了不存在的段,OBS返回400 Bad Request,错误码为InvalidPart。 如果请求段列表中包含的段的Etag错误,OBS返回400 Bad Request,错误码为InvalidPart。 除最后一个段之外的其它段尺寸过小(小于100KB),OBS返回400 Bad Request。 对象在合并完成后总大小如果超过48.8TB,OBS返回400 Bad Request。 其他错误已包含在表2中。
  • 多版本 如果桶的多版本状态是开启的,则合并段后得到的对象生成一个唯一的版本号,并且会在响应报头x-obs-version-id返回该版本号。如果桶的多版本状态是暂停的,则合并段后得到的对象版本号为null。关于桶的多版本状态,参见设置桶的多版本状态。 如果上传了10个段,但合并时只选择了9个段进行合并,那么未被合并的段将会被系统自动删除,未被合并的段删除后不能恢复。在进行合并之前请使用列出已上传的段接口进行查询,仔细核对所有段,确保没有段被遗漏。
  • 请求消息参数 该请求在消息参数中指定多段上传任务号来标明它要合并哪一个上传段任务,参数意义如表1所示。 表1 请求消息参数 参数名称 描述 是否必选 uploadId 指明多段上传任务。 类型:String 是 encoding-type 对响应中的Key进行指定类型的编码。如果Key包含xml 1.0标准不支持的控制字符,可通过设置encoding-type对响应中的Key进行编码。 类型:String 可选值:url。 否
  • WORM 如果桶的WORM开关是开启的,合并段会为合并后生成的对象自动应用WORM保护。如果您在初始化时指定了WORM相关头域并配置了保护截止日期,则会使用该日期作为合并生成对象的保护截止日期。如果您在初始化时没有指定WORM相关头域,但配置了桶级默认保护策略,则会自动应用桶级默认保护策略的保护期限,实际的保护截止日期为合并时间+保护期限。在您合并后,您依旧可以正常为合并后的对象配置对象级WORM保护策略。
  • 功能介绍 如果用户上传完所有的段,就可以调用合并段接口,系统将在服务端将用户指定的段合并成一个完整的对象。在执行“合并段”操作以前,用户不能下载已经上传的数据。在合并段时需要将多段上传任务初始化时记录的附加消息头信息拷贝到对象元数据中,其处理过程和普通上传对象带这些消息头的处理过程相同。在并发合并段的情况下,仍然遵循Last Write Win策略,但“Last Write”的时间定义为段任务的初始化时间。 已经上传的段,只要没有取消对应的多段上传任务,都要占用用户的容量配额;对应的多段上传任务“合并段”操作完成后,只有指定的多段数据占用容量配额,用户上传的其他此多段任务对应的段数据如果没有包含在“合并段”操作制定的段列表中,“合并段”完成后删除多余的段数据,且同时释放容量配额。 合并完成的多段上传数据可以通过已有的下载对象接口,下载整个多段上传对象或者指定Range下载整个多段上传对象的某部分数据。 合并完成的多段上传数据可以通过已有的删除对象接口,删除整个多段上传对象的所有分段数据,删除后不可恢复。 合并完成的多段上传数据不记录整个对象的MD5作为Etag,在下载多段数据或List桶内对象看到的多段数据其Etag的生成方式为:MD5(M1M2……MN)-N,其中,Mn表示第n段的MD5值, 如请求示例所示,有3个分段,每个分段都有对应的MD5值,合并段ETag的生成是先将3个分段的MD5合并起来再进行MD5计算得到一个新值,再拼接-N作为合并段的ETag值,-N表示总共有多少段,在该示例中即为-3。 合并段请求如果出现等待响应超时、服务端返回500或503报错时,建议客户端可以先尝试获取多段任务对应的对象元数据,并比较响应的x-obs-uploadId头域的值,是否与本次要合并的段任务ID相同,如果相同,说明服务端实际已经合并段成功,无需再进行重试。关于并发一致性说明,参见7.5-并发一致性说明。
  • 响应消息头 该请求的响应消息使用公共消息头,具体请参考表1。 除公共响应消息头之外,还可能使用如表3中的消息头。 表3 附加响应消息头 消息头名称 描述 x-obs-version-id 合并得到的对象的版本号。 类型:String x-obs-server-side-encryption 如果服务端加密是SSE-KMS方式,响应包含该头域。 类型:String 示例:x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id 如果服务端加密是SSE-KMS方式,响应包含该头域,该头域表示主密钥。 类型:String 格式为: regionID:domainID(租户ID):key/key_id 其中regionID是使用密钥所属region的ID;domainID是使用密钥所属租户的租户ID;key_id是本次加密使用的密钥ID。 示例: x-obs-server-side-encryption-kms-key-id:cn-north-4:domainiddomainiddomainiddoma0001:key/4f1cd4de-ab64-4807-920a-47fc42e7f0d0 x-obs-server-side-encryption-customer-algorithm 如果服务端加密是SSE-C方式,响应包含该头域,该头域表示加密使用的算法。 类型:String 示例:x-obs-server-side-encryption-customer-algorithm:AES256
  • 请求示例 PUT /ObjectName?truncate&length=1000 HTTP/1.1 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Authorization: OBS H4IPJX0TQTHTHEBQQCEC:75/Y4Ng1izvzc1nTGxpMXTE6ynw= Content-Length: 1 Date: WED, 01 Jul 2015 04:19:20 GMT
  • 响应示例 1 2 3 4 5 HTTP/1.1 204 No Content Server: OBS x-obs-request-id: 8DF400000163D3F51DEA05AC9CA066F1 x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAA BCS gkM4Dij80gAeFY8pAZIwx72QhDeBZ5 Date: WED, 01 Jul 2015 04:19:21 GMT
  • 响应示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 HTTP/1.1 200 OK x-obs-request-id: A603000001604A7DFE4A4AF31E301891 x-obs-id-2: BKOvGmTlt6sda5X4G89PuMO4fabObGYmnpRGkaMba1LqPt0fCACEuCMllAObRK1n Date: WED, 01 Jul 2015 02:35:46 GMT Content-Length: 509 Server: OBS { "Statement":[ { "Sid":"Stmt1375240018061", "Effect":"Allow", "Principal":{ "ID":[ "domain/domainiddomainiddomainiddo006666:user/useriduseriduseriduseridus004001", "domain/domainiddomainiddomainiddo006667:user/*" ] }, "Action":[ "*" ], "Resource":[ "examplebucket" ] } ] }
  • 请求示例 1 2 3 4 5 6 GET /?tagging HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: Wed, 27 Jun 2018 13:25:44 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:H1INcyc5i0XlHqYTfuzkPxLZUPM=
  • 响应消息元素 在此请求返回的响应消息体中包含的配置元素如下表1。 表1 桶标签配置元素 名称 描述 Tagging TagSet和Tag的元素 类型:Container 父元素:无 TagSet Tag的集合元素 类型:Container 父元素:Tagging Tag Tag信息的元素 类型:Container 父元素:TagSet Key Tag的名字 类型:String 父元素:Tag Value Tag的值 类型:String 父元素:Tag
  • 请求示例 1 2 3 4 5 6 GET /?acl HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 02:39:28 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:X7HtzGsIEkzJbd8vo1DRu30vVrs=
  • 响应消息元素 该请求的响应中以消息元素的形式返回桶的ACL信息,元素的具体意义如表1所示。 表1 响应消息元素 元素 元素说明 Owner 桶的所有者信息。 类型:XML ID 用户所属租户的租户Id。 类型:String AccessControlList 访问控制列表,记录了对该桶有访问权限的用户列表和这些用户具有的权限。 类型:XML Grant 用于标记用户及用户的权限。 类型:XML Grantee 记录用户信息。 类型:XML Canned 向所有人授予权限。 类型:String,其值只能是Everyone。 Delivered 桶的ACL是否向桶内对象传递。 类型:Boolean Permission 指定的用户对该桶所具有的操作权限。 类型:String
  • 请求示例 1 2 3 4 5 6 DELETE /?cors HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:56:41 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:mKUs/uIPb8BP0ZhvMd4wEy+EbiI=
  • 响应示例 1 2 3 4 5 HTTP/1.1 204 No Content Server: OBS x-obs-request-id: BF26000001643639F290185BB27F793A x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAAB CS LWMRFJfckapW+ktT/+1AnAz7XlNU0b Date: WED, 01 Jul 2015 03:56:41 GMT
  • 请求示例:桶设置了CORS后,获取桶元数据和CORS配置 1 2 3 4 5 6 7 8 HEAD / HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 02:30:25 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:niCQCuGIZpETKIyx1datxHZyYlk= Origin:www.example.com Access-Control-Request-Headers:AllowedHeader_1
  • 响应示例:桶设置了CORS后,获取桶元数据和CORS配置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF260000016439C734E0788404623FA8 Content-Type: application/xml x-obs-storage-class: STANDARD x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSxwLpq9Hzf3OnaXr+pI/OPLKdrtiQAF Date: WED, 01 Jul 2015 02:30:25 GMT x-obs-bucket-location: cn-north-4 Access-Control-Allow-Origin: www.example.com Access-Control-Allow-Methods: POST,GET,HEAD,PUT Access-Control-Allow-Headers: AllowedHeader_1 Access-Control-Max-Age: 100 Access-Control-Expose-Headers: ExposeHeader_1 x-obs-version: 3.0 Content-Length: 0
  • 响应示例:未携带获取CORS配置 1 2 3 4 5 6 7 8 9 10 HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF260000016439C734E0788404623FA8 Content-Type: application/xml x-obs-storage-class: STANDARD x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSxwLpq9Hzf3OnaXr+pI/OPLKdrtiQAF Date: WED, 01 Jul 2015 02:30:25 GMT x-obs-bucket-location: cn-north-4 x-obs-version: 3.0 Content-Length: 0
  • 请求示例:未携带获取CORS配置 1 2 3 4 5 6 HEAD / HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 02:30:25 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:niCQCuGIZpETKIyx1datxHZyYlk=
  • 响应消息头 该请求的响应消息使用公共消息头,具体请参考表1。 除公共响应消息头之外,还可能使用如下表2 附加响应消息头中的消息头。 表2 附加响应消息头 消息头名称 描述 x-obs-bucket-location 桶的区域位置信息。 类型:String x-obs-storage-class 桶的默认存储类型。包含:STANDARD(标准存储)、WARM(低频访问存储)、COLD(归档存储)、DEEP_ARCHIVE(深度归档存储) 类型:String x-obs-version 桶所在的OBS服务版本号。 类型:String x-obs-fs-file-interface 是否为并行文件系统。取值包含Enabled(并行文件系统)。 不携带此头域表示不属于并行文件系统。 类型:String x-obs-epid 当前桶的企业项目id。 类型:String x-obs-az-redundancy 桶的数据冗余存储策略属性,决定数据是单AZ存储还是多AZ存储。 取值为3az,表示数据冗余存储在同一区域的多个可用区。 不携带此头域表示为单az存储,仅使用1个可用区存储。 类型:String Access-Control-Allow-Origin 当桶设置了CORS配置,如果请求的Origin满足服务端的CORS配置,则在响应中包含这个Origin。 类型:String Access-Control-Allow-Headers 当桶设置了CORS配置,如果请求的headers满足服务端的CORS配置,则在响应中包含这个headers。 类型:String Access-Control-Max-Age 当桶设置了CORS配置,服务端CORS配置中的MaxAgeSeconds。 类型:Integer Access-Control-Allow-Methods 当桶设置了CORS配置,如果请求的Access-Control-Request-Method满足服务端的CORS配置,则在响应中包含这条rule中的Methods。 类型:String 有效值:GET、PUT、HEAD、POST 、DELETE Access-Control-Expose-Headers 当桶设置了CORS配置,服务端CORS配置中的ExposeHeader。 类型:String
  • 请求消息头 该请求使用公共消息头,具体参见表3。 如果想要获取CORS配置信息,则需要使用的消息头如下表1 获取CORS配置的请求消息头所示。 表1 获取CORS配置的请求消息头 消息头名称 描述 是否必选 Origin 预请求指定的跨域请求Origin(通常为域名)。 类型:String 是 Access-Control-Request-Headers 实际请求可以带的HTTP头域,可以带多个头域。 类型:String 否
  • 响应示例 1 2 3 4 5 HTTP/1.1 204 No Content x-obs-request-id: 9006000001643AAAF70BF6152D71BE8A x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSB4oWmNX3gVGGLr1cRPWjOhffEbq1XV Date: WED, 01 Jul 2015 02:36:06 GMT Server: OBS
  • 请求示例 1 2 3 4 5 6 GET /?storageinfo HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:31:18 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:bLcdeJGYWw/eEEjMhPZx2MK5R9U=
  • 响应消息元素 该响应中将桶存量信息以消息元素的形式返回,元素的具体含义如表1所示。 表1 响应消息元素 元素名称 描述 GetBucketStorageInfoResult 保存桶存量请求结果,包含存量大小和对象个数。 类型:XML Size 返回存量大小。 类型:Long ObjectNumber 返回对象个数。 类型:Integer StandardSize 返回STANDARD存储类型的存量大小。当无STANDARD存储类型对象时不返回此字段。 类型:Long StandardObjectNumber 返回STANDARD对象个数。当无STANDARD存储类型对象时不返回此字段。 类型:Integer WarmSize 返回WARM存储类型的存量大小。当无WARM存储类型对象时不返回此字段。 类型:Long WarmObjectNumber 返回WARM对象个数。当无WARM存储类型对象时不返回此字段。 类型:Integer ColdSize 返回COLD存储类型的存量大小。当无COLD存储类型对象时不返回此字段。 类型:Long ColdObjectNumber 返回COLD对象个数。当无COLD存储类型对象时不返回此字段。 类型:Integer DeepArchiveSize 返回DEEP_ARCHIVE存储类型的存量大小。当无DEEP_ARCHIVE存储类型对象时不返回此字段。 类型:Long DeepArchiveObjectNumber 返回DEEP_ARCHIVE对象个数。当无DEEP_ARCHIVE存储类型对象时不返回此字段。 类型:Integer
  • 请求示例 1 2 3 4 5 6 GET /?website HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:41:54 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:Yxt1Ru+feHE0S94R7dcBp+hfLnI=
  • 请求示例 1 2 3 4 5 6 GET /?versioning HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:15:20 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:4N5qQIoluLO9xMY0m+8lIn/UWXM=
共100000条