Appearance
GetBucketCors
接口描述
本接口用于获取指定的Bucket当前的CORS规则。
权限说明
只有Bucket的所有者和被授予FULL_CONTROL权限的用户才能设置Bucket的CORS。没有权限时,返回403 Forbidden错误,错误码: AccessDenied。
请求
请求语法
GET /<BucketName>?cors HTTP/1.1
Host: fos.flymeyun.com
Date: date
请求参数
无
请求头域
无特殊Header参数
请求元素
无
响应
响应头域
无
响应元素
名称 | 描述 | 是否必需 | 父节点 |
---|---|---|---|
corsConfiguration | Bucket的CORS规则容器。每个Bucket最多允许有100条规则。如果有多条配置,执行顺序为从上到下。 | 是 | 无 |
allowedOrigins | 存储允许的跨域请求的来源的容器。 | 是 | corsConfiguration |
allowedOrigin | 指定允许的跨域请求的来源,允许使用最多一个 * 通配符。 如果指定为 * 则表示允许所有的来源的跨域请求。特别的还支持 * 作为后缀来表示某一类网站比如abc*,则表示支持abc开头的网站。注意:allowedOrigin匹配时大小写敏感。类型:字符串 | 是 | allowedOrigins |
allowedMethods | 存储允许的跨域请求方法的容器。 | 是 | corsConfiguration |
allowedMethod | 指定允许的跨域请求的方法,不支持通配符 *,大小写敏感。类型:枚举,取值有“GET,PUT,DELETE,POST,HEAD”。 | 是 | allowedMethods |
allowedHeaders | 存储允许的allowedHeaders容器。控制在OPTIONS预取指令中Access-Control-Request-Headers头中指定的header是否允许。 | 否 | corsConfiguration |
allowedHeader | 控制在OPTIONS预取指令中Access-Control-Request-Headers头中指定的header是否允许。在Access-Control-Request-Headers中指定的每个header都必须在allowedHeader中有一条对应的项。每一个header允许使用最多一个 * 通配符,不区分大小写。类型:字符串。 | 否 | allowedHeaders |
allowedExposeHeaders | 存储允许用户从应用程序中访问的响应头的容器。 | 否 | corsConfiguration |
allowedExposeHeader | 指定允许用户从应用程序中访问的响应头(例如一个Javascript的XMLHttpRequest对象)。不允许使用 * 通配符。OPTIONS请求中将根据此定义设置Access-Control-Expose-Headers。类型:字符串。 | 否 | allowedExposeHeaders |
maxAgeSeconds | 指定浏览器对特定资源的预取(OPTIONS)请求返回结果的缓存时间,在缓存时间内请求方不必发送重复的preflight请求,单位为秒。类型:Int64。 | 否 | corsConfiguration |
注意事项
- 当Bucket不存在时,会返回404 Not Found错误,错误码:NoSuchBucket。
- 如果CORS规则并不存在,会返回404 Not Found错误,错误码:NoSuchCORSConfiguration。
示例
请求示例
GET /<BucketName>?cors HTTP/1.1
Host: fos.flymeyun.com
Date: Wed, 06 Apr 2016 06:34:40 GMT
响应示例
HTTP/1.1 200 OK
x-fos-request-id: 4db2b34d-654d-4d8a-b49b-3049ca786409
Date: Wed, 06 Apr 2016 06:34:40 GMT
Content-Length: 1324
Content-Type: application/json; charset=utf-8
{
"corsConfiguration": [
{
"allowedOrigins": [
"http://www.example.com",
"www.example2.com"
],
"allowedMethods": [
"GET",
"HEAD",
"DELETE"
],
"allowedHeaders": [
"Authorization",
"x-fos-test",
"x-fos-test2"
],
"allowedExposeHeaders": [
"user-custom-expose-header"
],
"maxAgeSeconds": 3600
},
{
"allowedOrigins": [
"http://www.meizu.com"
],
"allowedMethods": [
"GET",
"HEAD",
"DELETE"
],
"allowedHeaders": [
"*"
],
"allowedExposeHeaders": [
"user-custom-expose-header"
],
"maxAgeSeconds": 1800
}
]
}