华为云用户手册

  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用 IAM 或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 单次上传对象大小范围是[0, 5GB]。 如果需要上传超过5GB的大文件,需要使用分段上传。
  • 返回结果 表5 返回结果 参数类型 描述 表6 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表6。 表6 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表8 参数解释: 操作成功后的结果数据,详见表8。 约束限制: 当Status大于300时为空。 表7 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表8 CopyObjectOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 LastModified string 参数解释: 目标对象的最近一次修改时间(UTC时间)。 ETag string 参数解释: 目标对象的ETag值。对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,都有唯一的ETag。 约束限制: 当对象是服务端加密的对象时,ETag值不是对象的MD5值。 CopySourceVersionId string 参数解释: 源对象的版本号。 VersionId string 参数解释: 目标对象的版本号。
  • 接口约束 您必须是桶拥有者或拥有复制对象的权限,才能复制对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 复制对象操作的请求需要通过头域携带复制的原桶和对象信息,不能携带消息实体。 目标对象大小范围是[0, 5GB],如果源对象大小超过5GB,只能使用复制段(Node.js SDK)功能复制部分对象。
  • 返回结果 表8 返回结果 参数类型 描述 表9 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表9。 表9 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表11 参数解释: 操作成功后的结果数据,详见表11。 约束限制: 当Status大于300时为空。 表10 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表11 BaseResponseOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。
  • 接口约束 由于日志文件是OBS产生,并且由OBS上传到存放日志的桶中,因此OBS需要获得委托授权,用于上传生成的日志文件,所以在配置桶日志管理前,需要先到 统一身份认证 服务生成一个对OBS服务的委托,委托配置权限只需设置目标桶的上传对象权限。如何创建委托请参考创建云服务委托。 您必须是桶拥有者或拥有设置桶日志管理配置的权限,才能设置桶日志管理配置。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:bucket:PutBucketLogging权限,如果使用桶策略则需授予PutBucketLogging权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 日志目标桶与源桶必须在同一个区域(region)。 在配置桶日志管理前,需要先到统一身份认证服务生成一个对OBS服务的委托,获取到委托名。请参考创建IAM委托。
  • 请求参数 表1 请求参数列表 参数名称 参数类型 是否必选 描述 Bucket string 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无 Agency string 作为请求参数时如果是设置桶日志配置则必选 参数解释: 目标桶(存放日志文件的桶)的所有者通过统一身份认证服务(IAM)创建对OBS云服务委托的名称。 约束限制: 默认情况下,在为委托配置权限时只需设置日志存储桶的上传对象(PutObject)权限。如果日志存储桶开启了默认加密功能,还需要委托同时具有日志存储桶所在区域的KMS Administrator权限。 取值范围: 可以选择账号下已有的IAM委托,也可以创建一个新的委托。创建委托参见创建IAM委托。 默认取值: 无 LoggingEnabled LoggingEnabled 设置logging时必选。 关闭logging时勿选。 参数解释: 日志配置信息。不配置时默认关闭桶日志。 约束限制: 无 取值范围: 详见LoggingEnabled。 默认取值: 无 表2 LoggingEnabled 参数名称 参数类型 是否必选 描述 TargetBucket string 设置logging时必选。 关闭logging时勿选。 参数解释: 日志存储桶的桶名,该桶用于存放日志文件。 约束限制: 需要和开启日志功能的桶在同一个region中。 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无 TargetPrefix string 设置logging时必选。 关闭logging时勿选。 参数解释: 日志文件对象的对象名前缀,设置后日志文件对象将携带统一前缀存储在日志存储桶中。 约束限制: 无 取值范围: 长度大于0且不超过1024的字符串。 默认取值: 无 TargetGrants Grant 可选 参数解释: 被授权用户的权限信息列表,定义哪些用户可以针对日志文件进行哪些访问操作。 约束限制: 无 取值范围: 详见Grant。 默认取值: 无 表3 Grant 参数名称 参数类型 是否必选 描述 Grantee Grantee 必选 参数解释: 被授权用户相关信息。 约束限制: 无 取值范围: 详见Grantee。 默认取值: 无 Permission PermissionType 必选 参数解释: 被授予的权限。 约束限制: 无 取值范围: 详见PermissionType。 默认取值: 无 表4 Grantee 参数名称 参数类型 是否必选 描述 Type GranteeType 作为请求参数时必选 参数解释: 被授权用户的类型。 约束限制: 无 取值范围: 被授权用户类型的取值范围详见GranteeType。 默认取值: 无 ID string 作为请求参数时,如果Type为用户类型则必选。 参数解释: 被授权用户的账号ID,即domain_id。 约束限制: 无 取值范围: 如何获取账号ID请参见获取账号ID。 默认取值: 无 Name string 作为请求参数时可选 参数解释: 被授权用户的账号名。 约束限制: 不支持中文。 只能以字母开头。 长度为6-32个字符。 只能包含英文字母、数字或特殊字符(-_)。 取值范围: 无 默认取值: 无 URI GroupUriType 作为请求参数时,如果Type为用户组类型则必选。 参数解释: 被授权的用户组。 约束限制: 无 取值范围: 授权用户组取值范围详见GroupUriType。 默认取值: 无 表5 GranteeType 常量名 原始值 说明 GranteeGroup Group 授权给用户组。 GranteeUser CanonicalUser 授权给单个用户。 表6 GroupUriType 常量名 原始值 说明 GroupAllUsers AllUsers 所有用户。 GroupAuthenticatedUsers AuthenticatedUsers 授权用户,已废弃。 GroupLogDelivery LogDelivery 日志投递组,已废弃。 表7 PermissionType 常量名 原始值 说明 ObsClient.enums.PermissionRead READ 如果有桶的读权限,则可以获取该桶内对象列表、桶内多段任务、桶的元数据、桶的多版本。 如果有对象的读权限,则可以获取该对象内容和元数据。 ObsClient.enums.PermissionWrite WRITE 如果有桶的写权限,则可以上传、覆盖和删除该桶内任何对象和段。 此权限在对象上不适用。 ObsClient.enums.PermissionReadAcp READ_ACP 如果有读ACP的权限,则可以获取对应的桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有读对应桶或对象ACP的权限。 ObsClient.enums.PermissionWriteAcp WRITE_ACP 如果有写ACP的权限,则可以更新对应桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有写对应桶或对象的ACP的权限。 拥有了写ACP的权限,由于可以更改权限控制策略,实际上意味着拥有了完全访问的权限。 ObsClient.enums.PermissionFullControl FULL_CONTROL 如果有桶的完全控制权限意味着拥有PermissionRead、PermissionWrite、PermissionReadAcp和PermissionWriteAcp的权限。 如果有对象的完全控制权限意味着拥有PermissionRead、PermissionReadAcp和PermissionWriteAcp的权限。
  • 功能说明 调用设置桶日志管理配置接口,您可以为指定桶打开桶日志功能,并配置日志存放的目标桶。创建桶时,默认是不生成桶的日志的,调用Node.js SDK的设置桶日志管理配置接口时,接口会自动为您打开桶日志配置。桶日志功能开启后,桶的每次操作将会产生一条日志,并将多条日志打包成一个日志文件。日志文件存放位置需要在开启桶日志功能时指定,可以存放到开启日志功能的桶中,也可以存放到其他您有权限的桶中,但需要和开启日志功能的桶在同一个region中。您还可以根据需要配置日志文件的访问权限,以及日志文件的文件名前缀。
  • 接口约束 您必须是桶拥有者或拥有复制对象的权限,才能复制对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 目标对象大小范围是[0, 5GB],如果源对象大小超过5GB,只能使用复制段(Node.js SDK)功能复制部分对象。
  • 返回结果 表5 返回结果 参数类型 描述 表6 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表6。 表6 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表8 参数解释: 操作成功后的结果数据,详见表8。 约束限制: 当Status大于300时为空。 表7 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表8 CopyObjectOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 LastModified string 参数解释: 目标对象的最近一次修改时间(UTC时间)。 ETag string 参数解释: 目标对象的ETag值。对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,都有唯一的ETag。 约束限制: 当对象是服务端加密的对象时,ETag值不是对象的MD5值。 CopySourceVersionId string 参数解释: 源对象的版本号。 VersionId string 参数解释: 目标对象的版本号。
  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 创建文件夹本质上来说是创建了一个大小为0且对象名以“/”结尾的对象。
  • 请求参数 表1 请求参数列表 参数名称 参数类型 是否必选 描述 Bucket string 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无 Key string 必选 参数解释: 对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 约束限制: 无 取值范围: 长度大于0且不超过1024的字符串。 默认取值: 无 UploadId string 必选 参数解释: 分段上传任务的ID。任务ID可以通过初始化分段上传任务生成。 约束限制: 无 取值范围: 长度为32的字符串,例如:000001648453845DBB78F2340DD460D8。 默认取值: 无 Parts Part[] 必选 参数解释: 待合并的段列表。详情参见Part。 EncodingType string 可选 参数解释: 对响应中的Key进行指定类型的编码。如果Key包含xml 1.0标准不支持的控制字符,可通过设置该参数对响应中的Key进行编码。 取值范围: 可选值为url。 默认取值: 无,不设置则不编码。 表2 Part 参数名称 参数类型 描述 PartNumber number 参数解释: 段号。 约束限制: 无 取值范围: 取值范围是[1,10000]的非负整数。 默认取值: 无 ETag string 参数解释: 段的ETag值。分段的base64编码的128位MD5摘要。 约束限制: 通过上传段请求可以收到服务端返回的ETag值(段数据的MD5值)返回给用户。 取值范围: 长度为32的字符串。 默认取值: 无
  • 返回结果 表3 返回结果 参数类型 描述 表4 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表4。 表4 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表6 参数解释: 操作成功后的结果数据,详见表6。 约束限制: 当Status大于300时为空。 表5 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表6 CompleteMultipartUploadOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 ETag string 参数解释: 合并段后根据各个段的ETag值计算出的结果。对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,都有唯一的ETag。 约束限制: 当对象是服务端加密的对象时,ETag值不是对象的MD5值。 Bucket string 参数解释: 合并段所在的桶名。 Key string 参数解释: 对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 Location string 参数解释: 合并段后得到的对象的url。 例如:https://example-Bucket.obs.regions.myhuaweicloud.com/example-Object VersionId string 参数解释: 合并段后得到的对象版本号。如果桶的多版本状态为开启,则会返回对象的版本号。 SseKms string 参数解释: 表示服务端加密是SSE-KMS方式。对象使用SSE-KMS方式加密。 SseKmsKey string 参数解释: SSE-KMS加密方式下使用的KMS主密钥的ID值。 SseC string 参数解释: 表示服务端加密是SSE-C方式。对象使用SSE-C加密方式。 SseCKeyMd5 string 参数解释: SSE-C方式下加密使用密钥的MD5值,该值用于验证密钥传输过程中是否出错。 约束限制: 由密钥值经过MD5加密再经过Base64编码后得到,示例:4XvB3tbNTN+tIEVa0/fGaQ== EncodingType string 参数解释: 用于指定对响应中的Key进行指定类型的编码。如果Key包含xml 1.0标准不支持的控制字符,可通过设置该参数对响应中的Key进行编码。 取值范围: 可选值为url。 默认取值: 无,不设置则不编码。
  • 功能说明 如果用户上传完所有的段,就可以调用合并段接口,系统将在服务端将用户指定的段合并成一个完整的对象。在执行“合并段”操作以前,用户不能下载已经上传的数据。在合并段时需要将多段上传任务初始化时记录的附加消息头信息复制到对象元数据中,其处理过程和普通上传对象带这些消息头的处理过程相同。在并发合并段的情况下,仍然遵循Last Write Win策略,但“Last Write”的时间定义为段任务的初始化时间。 已经上传的段,只要没有取消对应的多段上传任务,都要占用用户的容量配额;对应的多段上传任务“合并段”操作完成后,只有指定的多段数据占用容量配额,用户上传的其他此多段任务对应的段数据如果没有包含在“合并段”操作制定的段列表中,“合并段”完成后系统将删除多余的段数据,且同时释放容量配额。 合并段时,OBS通过按升序的段编号规范化多段来创建对象。如果在初始化上传段任务中提供了任何对象元数据,则OBS会将该元数据与对象相关联。成功完成请求后,段将不再存在。合并段请求必须包括上传ID以及段编号和相应的ETag值的列表。OBS响应包括可唯一地识别组合对象数据的ETag。此ETag无需成为对象数据的MD5哈希。
  • 接口约束 您必须是桶拥有者或拥有合并段的权限,才能合并段。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 如果上传了10个段,但合并时只选择了9个段进行合并,那么未被合并的段将会被系统自动删除,未被合并的段删除后不能恢复。在进行合并之前请使用列出已上传的段接口进行查询,仔细核对所有段,确保没有段被遗漏。 如果最后一个段之外的其它段尺寸过小(小于100KB),OBS返回400 Bad Request。
  • 返回结果说明 表4 返回结果 参数类型 描述 表5 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表5。 表5 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult BaseResponseOuput 参数解释: 操作成功后的结果数据,详见BaseResponseOuput。 约束限制: 当Status大于300时为空。 表6 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表7 BaseResponseOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。
  • 接口约束 您必须拥有obs:bucket:CreateBucket权限,才能创建桶。建议使用IAM进行授权,配置方式详见使用IAM自定义策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。创建桶时,如果使用的终端节点归属于默认区域华北-北京一(cn-north-1),则可以不指定区域;如果使用的终端节点归属于其他区域,则必须指定区域,且指定的区域必须与终端节点归属的区域一致。当前有效的区 域名 称可从这里查询。比如初始化时使用的终端节点EndPoint是obs.cn-north-4.myhuaweicloud.com,那么在创建桶的时候必须指定Location:cn-north-4才会创建成功,否则会返回状态码400。 同一账号下,可以创建多个存储桶,数量上限是100个(不区分地域),存储桶中的对象数量和大小没有限制。 新创建桶的桶名在OBS中必须是唯一的。如果是同一个用户重复创建同一区域的同名桶时返回HTTP状态码200。除此以外的其他场景重复创建同名桶返回HTTP状态码409,表明桶已存在。 用户删除桶后,需要等待30分钟才能创建同名桶和并行文件系统。 并不是所有区域都支持创建多AZ桶,你可以在产品价格详情页面,查询指定区域是否支持多AZ。
  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 同一个桶中存储的对象名必须是唯一的。 启用服务端加密SSE-C方式时,追加上传和初始化段一样,设置诸如x-obs-server-side-encryption之类的请求Header,后续追加上传也必须携带。 启用服务端加密SSE-KMS方式时,有且只有第一次上传且桶内不存在同名对象时,才设置诸如x-obs-server-side-encryption之类的请求Header,后续追加上传不携带,会继承之前的设置。 每次追加上传的长度不能超过对象长度上限5G的限制。 每个Appendable对象追加上传次数最多为10000次。 如果对象存储类别为COLD(归档存储)或深度归档存储,则不能调用该接口。 如果桶设置了跨区域复制配置,则不能调用该接口。 并行文件系统不支持追加上传对象。 ObsClient.putObject上传的对象可覆盖ObsClient.appendObject上传的对象,覆盖后对象变为普通对象,不可再进行追加上传。 第一次调用追加上传时,如果已存在同名的普通对象,则会抛出异常(HTTP状态码为409)。 追加上传返回的ETag是当次追加数据内容的ETag,不是完整对象的ETag。
  • 返回结果 表4 返回结果 参数类型 描述 表5 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表5。 表5 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表7 参数解释: 操作成功后的结果数据,详见表7。 约束限制: 当Status大于300时为空。 表6 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表7 AppendObjectOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 VersionId string 参数解释: 对象的版本号。如果桶的多版本状态为开启,则会返回对象的版本号。 ETag string 参数解释: 对象的ETag值,即base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,都有唯一的ETag。 约束限制: 当对象是服务端加密的对象时,ETag值不是对象的MD5值。 NextAppendPosition int64 参数解释: 下一次追加上传请求应该提供的追加写位置(position)。 约束限制: 需要追加写的对象首次上传时就必须指定为0,下次追加需要填写的值为服务端本次上传成功返回消息的NextAppendPosition,也可通过ObsClient.getObjectMetadata接口获取NextAppendPosition。 SseKms string 参数解释: 表示服务端加密是SSE-KMS方式。对象使用SSE-KMS方式加密。 SseKmsKey string 参数解释: SSE-KMS加密方式下使用的KMS主密钥的ID值。 SseC string 参数解释: 表示服务端加密是SSE-C方式。对象使用SSE-C加密方式。 SseCKeyMd5 string 参数解释: SSE-C方式下加密使用密钥的MD5值,该值用于验证密钥传输过程中是否出错。 约束限制: 由密钥值经过MD5加密再经过Base64编码后得到,示例:4XvB3tbNTN+tIEVa0/fGaQ==
  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 单次上传对象大小范围是[0, 5GB]。 如果需要上传超过5GB的大文件,需要使用分段上传。
  • 返回结果 表2 返回结果 参数类型 描述 表3 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表3。 表3 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表5 参数解释: 操作成功后的结果数据,详见表5。 约束限制: 当Status大于300时为空。 表4 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表5 CopyPartOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 ETag string 参数解释: 对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。ETag只反映变化的内容,而不是其元数据。上传的对象或复制操作创建的对象,都有唯一的ETag。 约束限制: 当对象是服务端加密的对象时,ETag值不是对象的MD5值。 LastModified string 参数解释: 目标段的最近一次修改时间(UTC时间)。 PartNumber number 参数解释: 段号。 SseKms string 参数解释: 表示服务端加密是SSE-KMS方式。对象使用SSE-KMS方式加密。 SseKmsKey string 参数解释: SSE-KMS加密方式下使用的KMS主密钥的ID值。 SseC string 参数解释: 表示服务端加密是SSE-C方式。对象使用SSE-C加密方式。 SseCKeyMd5 string 参数解释: SSE-C方式下加密使用密钥的MD5值,该值用于验证密钥传输过程中是否出错。 约束限制: 由密钥值经过MD5加密再经过Base64编码后得到,示例:4XvB3tbNTN+tIEVa0/fGaQ==
  • 接口约束 您必须是桶拥有者或拥有复制段的权限,才能复制段。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 复制段的结果不能仅根据HTTP返回头域中的status_code来判断请求是否成功,头域中status_code返回200时表示服务端已经收到请求,且开始处理复制段请求。复制是否成功会在响应消息的body中,只有body体中有ETag标签才表示成功,否则表示复制失败。
  • 请求参数 表1 请求参数列表 参数名称 参数类型 是否必选 描述 Bucket string 必选 参数解释: 目标桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无 Key string 必选 参数解释: 对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 约束限制: 无 取值范围: 长度大于0且不超过1024的字符串。 默认取值: 无 PartNumber number 必选 参数解释: 段号。 约束限制: 无 取值范围: 取值范围是[1,10000]。 默认取值: 无 UploadId string 必选 参数解释: 分段上传任务的ID。任务ID可以通过初始化分段上传任务生成。 约束限制: 无 取值范围: 长度为32的字符串,例如:000001648453845DBB78F2340DD460D8。 默认取值: 无 CopySource string 必选 参数解释: 用来指定复制对象操作的源桶名以及源对象名。当源对象存在多个版本时,通过versionId参数指定版本源对象。 示例:source_bucket/sourceObject?versionId=G001117FCE89978B0000401205D5DC9A 约束限制: 中文字符与%,需要进行URL编码。 取值范围: 无 默认取值: 无
  • 功能说明 初始化分段上传任务后,通过指定分段上传任务的ID,复制段到指定桶中。 多段上传任务创建后,用户可以通过指定多段上传任务的ID,为特定的任务上传段。添加段的方式还包括调用段复制接口。允许客户将已上传对象的一部分或全部复制为段。 将源对象object复制为一个段part1,如果在复制操作之前part1已经存在,复制操作执行之后,旧的段数据part1会被新复制的段数据覆盖。复制成功后,只能列举到最新的段part1,旧的段数据将会被删除。因此在使用复制段接口时请确保目标段不存在或者已无价值,避免因复制段导致数据误删除。复制过程中源对象object无任何变化。
  • 返回结果 表4 返回结果 参数类型 描述 表5 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表5。 表5 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表7 参数解释: 操作成功后的结果数据,详见表7。 约束限制: 当Status大于300时为空。 表6 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表7 InitiateMultipartUploadOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 Bucket string 参数解释: 分段上传任务的桶名。 Key string 参数解释: 分段上传任务的对象名。对象名是对象在存储桶中的唯一标识。对象名是对象在桶中的完整路径,路径中不包含桶名。 例如,您对象的访问地址为examplebucket.obs.cn-north-4.myhuaweicloud.com/folder/test.txt 中,对象名为folder/test.txt。 UploadId string 参数解释: 分段上传任务的ID,例如:000001648453845DBB78F2340DD460D8。 SseKms string 参数解释: 表示服务端加密是SSE-KMS方式。对象使用SSE-KMS方式加密。 SseKmsKey string 参数解释: SSE-KMS加密方式下使用的KMS主密钥的ID值。 SseC string 参数解释: 表示服务端加密是SSE-C方式。对象使用SSE-C加密方式。 SseCKeyMd5 string 参数解释: SSE-C方式下加密使用密钥的MD5值,该值用于验证密钥传输过程中是否出错。 约束限制: 由密钥值经过MD5加密再经过Base64编码后得到,示例:4XvB3tbNTN+tIEVa0/fGaQ== EncodingType string 参数解释: 用于指定对响应中的Key进行指定类型的编码。如果Key包含xml 1.0标准不支持的控制字符,可通过设置该参数对响应中的Key进行编码。 取值范围: 可选值为url。 默认取值: 无,不设置则不编码。
  • 接口约束 您必须是桶拥有者或拥有初始化分段上传任务的权限,才能初始化分段上传任务。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 初始化上传段任务并上传一个或多个段之后,您必须合并段或取消多段上传任务,才能停止收取已上传的段的存储费用。仅当在合并段或取消多段上传任务之后,OBS才释放段存储并停止向您收取段存储费用。
  • 功能说明 使用多段上传特性时,用户必须首先调用创建多段上传任务接口创建任务,系统会给用户返回一个全局唯一的多段上传任务号,作为任务标识。后续用户可以根据这个标识发起相关的请求,如:上传段、合并段、列举段等。创建多段上传任务不影响已有的同名对象;同一个对象可以同时存在多个多段上传任务;每个多段上传任务在初始化时可以附加消息头信息,包括acl、用户自定义元数据和通用的HTTP消息头contentType、contentEncoding等,这些附加的消息头信息将先记录在多段上传任务元数据中。调用初始化分段上传任务接口成功后,会返回分段上传任务的全局唯一标识(Upload ID),在后面的操作中将用到它。
  • 接口约束 您必须是桶拥有者或拥有上传对象的权限,才能上传对象。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:object:PutObject权限,如果使用桶策略则需授予PutObject权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、配置对象策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。 单次上传对象大小范围是[0, 5GB]。 如果需要上传超过5GB的大文件,需要使用分段上传。
  • 返回结果 表2 返回结果 参数类型 描述 表3 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表3。 表3 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表5 参数解释: 操作成功后的结果数据,详见表5。 约束限制: 当Status大于300时为空。 表4 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表5 GetBucketLoggingOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 Agency string 参数解释: 目标桶(存放日志文件的桶)的所有者通过统一身份认证服务(IAM)创建对OBS云服务委托的名称。 可以选择账号下已有的IAM委托,也可以创建一个新的委托。创建委托参见创建IAM委托。 LoggingEnabled LoggingEnabled 参数解释: 日志配置信息。 表6 LoggingEnabled 参数名称 参数类型 描述 TargetBucket string 参数解释: 日志存储桶的桶名,该桶用于存放日志文件。 TargetPrefix string 参数解释: 日志文件对象的对象名前缀,设置后日志文件对象将携带统一前缀存储在日志存储桶中。 TargetGrants Grant 参数解释: 被授权用户的权限信息列表,定义哪些用户可以针对日志文件进行哪些访问操作,详见Grant。 表7 Grant 参数名称 参数类型 是否必选 描述 Grantee Grantee 作为请求参数时必选 参数解释: 被授权用户相关信息,详见Grantee。 Permission PermissionType 作为请求参数时必选 参数解释: 被授予的权限,详见PermissionType。 表8 Grantee 参数名称 参数类型 是否必选 描述 Type GranteeType 作为请求参数时必选 参数解释: 被授权用户的类型,详见GranteeType。 ID string 作为请求参数时,如果Type为用户类型则必选。 参数解释: 被授权用户的账号ID,即domain_id。 Name string 作为请求参数时可选 参数解释: 被授权用户的账号名。 URI GroupUriType 作为请求参数时,如果Type为用户组类型则必选。 参数解释: 被授权的用户组,详见GroupUriType。 表9 GranteeType 常量名 原始值 说明 GranteeGroup Group 授权给用户组。 GranteeUser CanonicalUser 授权给单个用户。 表10 GroupUriType 常量名 原始值 说明 GroupAllUsers AllUsers 所有用户。 GroupAuthenticatedUsers AuthenticatedUsers 授权用户,已废弃。 GroupLogDelivery LogDelivery 日志投递组,已废弃。 表11 PermissionType 常量名 原始值 说明 ObsClient.enums.PermissionRead READ 如果有桶的读权限,则可以获取该桶内对象列表、桶内多段任务、桶的元数据、桶的多版本。 如果有对象的读权限,则可以获取该对象内容和元数据。 ObsClient.enums.PermissionWrite WRITE 如果有桶的写权限,则可以上传、覆盖和删除该桶内任何对象和段。 此权限在对象上不适用。 ObsClient.enums.PermissionReadAcp READ_ACP 如果有读ACP的权限,则可以获取对应的桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有读对应桶或对象ACP的权限。 ObsClient.enums.PermissionWriteAcp WRITE_ACP 如果有写ACP的权限,则可以更新对应桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有写对应桶或对象的ACP的权限。 拥有了写ACP的权限,由于可以更改权限控制策略,实际上意味着拥有了完全访问的权限。 ObsClient.enums.PermissionFullControl FULL_CONTROL 如果有桶的完全控制权限意味着拥有PermissionRead、PermissionWrite、PermissionReadAcp和PermissionWriteAcp的权限。 如果有对象的完全控制权限意味着拥有PermissionRead、PermissionReadAcp和PermissionWriteAcp的权限。
  • 请求参数 表1 BucketRequestInput 参数名称 参数类型 是否必选 描述 Bucket string 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无
  • 接口约束 您必须是桶拥有者或拥有获取桶日志管理配置的权限,才能获取桶日志管理配置。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:bucket:GetBucketLogging权限,如果使用桶策略则需授予GetBucketLogging权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。
共100000条