GetBucketCors介面用於擷取指定儲存空間(Bucket)當前的跨域資源共用CORS(Cross-Origin Resource Sharing)規則。
請求文法
GET /?cors HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
要求標頭
此介面僅涉及公用要求標頭。更多資訊,請參見公用要求標頭(Common Request Headers)。
回應標頭
此介面僅涉及公用回應標頭。更多資訊,請參見公用回應標頭(Common Response Headers)。
響應元素
名稱 | 類型 | 樣本值 | 描述 |
CORSRule | 容器 | 不涉及 | CORS規則的容器。每個Bucket最多允許10條規則。 父節點:CORSConfiguration |
AllowedOrigin | 字串 | * | 允許的跨域請求來源。 星號(*)表示允許所有的來源的跨域請求。 父節點:CORSRule |
AllowedMethod | 枚舉(GET,PUT,DELETE,POST,HEAD) | GET | 允許的跨域要求方法。 父節點:CORSRule |
AllowedHeader | 字串 | * | 控制在OPTIONS預取指令中Access-Control-Request-Headers指定的header是否允許。在Access-Control-Request-Headers中指定的每個header都在AllowedHeader中有一條對應的項。 父節點:CORSRule |
ExposeHeader | 字串 | x-oss-test | 允許使用者從應用程式中訪問的回應標頭(例如一個JavaScript的XMLHttpRequest對象)。 父節點:CORSRule |
MaxAgeSeconds | 整型 | 100 | 瀏覽器對特定資源的預取(OPTIONS)請求返回結果的緩衝時間。 一個CORS規則裡面最多允許出現一個MaxAgeSeconds。 單位:秒 父節點:CORSRule |
CORSConfiguration | 容器 | 不涉及 | Bucket的CORS規則容器。 父節點:無 |
ResponseVary | 布爾 | false | 是否返回Vary: Origin頭。
父節點:CORSConfiguration |
樣本
請求樣本
Get /?cors HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Thu, 13 Sep 2012 07:51:28 GMT
Authorization: OSS qn6q**************:77Dv****************
返回樣本
HTTP/1.1 200
x-oss-request-id: 50519080C4689A033D00****
Date: Thu, 13 Sep 2012 07:51:28 GMT
Connection: keep-alive
Content-Length: 218
Server: AliyunOSS
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
<ExposeHeader>x-oss-test</ExposeHeader>
<MaxAgeSeconds>100</MaxAgeSeconds>
</CORSRule>
<ResponseVary>false</ResponseVary>
</CORSConfiguration>
SDK
此介面所對應的各語言SDK如下:
錯誤碼
錯誤碼 | HTTP 狀態代碼 | 描述 |
NoSuchBucket | 404 | 目標Bucket不存在。 |
NoSuchCORSConfiguration | 404 | 目標CORS規則不存在。 |
AccessDenied | 403 | 只有Bucket的擁有者才能擷取CORS規則。 |