华为云计算 云知识 OPTIONS桶CheckBucketOptions
OPTIONS桶CheckBucketOptions

 

接口说明

OPTIONS,称为预请求,是客户端发送给服务端的一种请求,通常被用于检测客户端是否具有对服务端进行操作的权限。只有当预请求成功返回,客户端才开始执行后续的请求。

OBS允许在桶内保存静态的网页资源,在正确的使用下,OBS的桶可以成为网站资源。在这种使用场景下,OBS中的桶作为服务端,需要处理客户端发送的OPTIONS预请求。

要处理OPTIONS,OBS的桶必须已经配置CORS,关于CORS的使用说明,请参见章节 设置桶的CORS配置

URL
OPTIONS  https://obs.cn-north-4.myhuaweicloud.com/ 
请求参数
名称 类型 IN 必选 描述
Authorization
 
string header

请求消息中可带的签名信息。

Date
 
string header

请求发起端的日期和时间,例如:Wed, 27 Jun 2018 13:39:15 +0000。 默认值:无。 条件:如果消息头中带了x-obs-date字段,则可以不带该字段,其他情况下必选。

Origin
 
string header

预请求指定的跨域请求Origin(通常为 域名 )。

类型:字符串

Access-Control-Request-Method
 
string header

实际请求可以带的HTTP方法,可以带多个方法头域。

类型:字符串

有效值:GET、PUT、HEAD、POST 、DELETE

Access-Control-Request-Headers
 
string header

实际请求可以带的HTTP头域,可以带多个头域。

类型:字符串

bucket_name
 
string query

请求的桶名称。

返回参数
返回码: 200

请求成功响应消息。

名称 类型 必选 描述
Content-Length
 
string

响应消息体的字节长度。

Connection
 
string

指明与服务器的连接是长连接还是短连接。

Date
 
string

OBS系统响应的时间。

ETag
 
string

对象的base64编码的128位MD5摘要。ETag是对象内容的唯一标识,可以通过该值识别对象内容是否有变化。比如上传对象时ETag为A,下载对象时ETag为B,则说明对象内容发生了变化。实际的ETag是对象的哈希值。ETag只反映变化的内容,而不是其元数据。上传的对象或拷贝操作创建的对象,通过MD5加密后都有唯一的ETag。如果通过多段上传对象,则无论加密方法如何,MD5会拆分ETag,此类情况ETag就不是MD5的摘要。

x-obs-id-2
 
string

帮助定位问题的特殊符号。

x-obs-request-id
 
string

由OBS创建来唯一确定本次请求的值,可以通过该值来定位问题。

Access-Control-Allow-Origin
 
string

如果请求的Origin满足服务端的CORS配置,则在响应中包含这个Origin。

类型:字符串

Access-Control-Allow-Headers
 
string

如果请求的headers满足服务端的CORS配置,则在响应中包含这个headers。

类型:字符串

Access-Control-Max-Age
 
integer

服务端CORS配置中的MaxAgeSeconds。

类型:整数

Access-Control-Allow-Methods
 
string

如果请求的Access-Control-Request-Method满足服务端的CORS配置,则在响应中包含这条rule中的Methods。

类型:字符串

有效值:GET、PUT、HEAD、POST 、DELETE

Access-Control-Expose-Headers
 
string

服务端CORS配置中的ExposeHeader。

类型:字符串

返回码: 400

请求失败响应消息。 除了公共的错误码外,此接口还会返回一些其他的错误码。下面列出本接口的一些常见错误,以及可能原因。

错误码 描述 HTTP状态码
Bad Request Invalid Access-Control-Request-Method: null。桶配置了CORS,OPTIONS桶时,没有加入method头域。 400 Bad Request
Bad Request Insufficient information. Origin request header needed.桶配置了CORS,OPTIONS桶时,没有加入origin头域。 400 Bad Request
名称 类型 必选 描述
Code
 
string

错误响应消息体XML中错误响应对应的HTTP消息返回码,具体的错误码请参见错误码-表2

Message
 
string

错误响应消息体XML中具体错误更全面、详细的英文解释,具体的错误消息请参见错误码-表2

RequestId
 
string

本次错误请求的请求ID,用于错误定位。

HostId
 
string

返回该消息的服务端ID。

Resource
 
string

该错误相关的桶或对象资源。

返回码: 403

请求失败响应消息。 除了公共的错误码外,此接口还会返回一些其他的错误码。下面列出本接口的一些常见错误,以及可能原因。

错误码 描述 HTTP状态码
AccessForbidden CORSResponse: This CORS request is not allowed. This is usually because the evalution of Origin, request method / Access-Control-Request-Method or Access-Control-Requet-Headers are not whitelisted by the resource's CORS spec.桶配置了CORS,OPTIONS桶时,Origin、method、Headers与任一rule匹配不上。 403 Forbidden
名称 类型 必选 描述
Code
 
string

错误响应消息体XML中错误响应对应的HTTP消息返回码,具体的错误码请参见错误码-表2

Message
 
string

错误响应消息体XML中具体错误更全面、详细的英文解释,具体的错误消息请参见错误码-表2

RequestId
 
string

本次错误请求的请求ID,用于错误定位。

HostId
 
string

返回该消息的服务端ID。

Resource
 
string

该错误相关的桶或对象资源。

请求示例
示例 1
 
"/"
 
"OPTIONS / HTTP/1.1\nUser-Agent: curl/7.29.0\nHost: examplebucket.obs.cn-north-4.myhuaweicloud.com\nAccept: */*\nDate: WED, 01 Jul 2015 04:02:15 GMT\nAuthorization: OBS H4IPJX0TQTHTHEBQQCEC:7RqP1vjemo6U+Adv9/Y6eGzWrzA=\nOrigin: www.example.com\nAccess-Control-Request-Method: PUT\n"
错误码
请参考 错误码说明

 

上一篇:函数中如何读写文件 下一篇:设置存储库资源SetVaultResource

对象存储服务 OBS     

对象存储服务(Object Storage Service)是一款稳定、安全、高效、易用的云存储服务,具备标准Restful API接口,可存储任意数量和形式的非结构化数据。