本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
CORS 組態的元素
若要設定儲存貯體以允許跨來源請求,您可以建立CORS組態。CORS 組態是包含元素的文件,用於識別您將允許存取儲存貯體的原始伺服器、您將支援每個原始伺服器的操作 (HTTP 方法),以及其他操作特定資訊。最多可以將 100 條規則新增至組態。您可以將CORS組態新增為儲存貯體的cors
子資源。
如果您在 S3 主控台CORS中設定 ,則必須使用 JSON 來建立CORS組態。新的 S3 主控台僅支援JSONCORS組態。
如需CORS組態及其元素的詳細資訊,請參閱下列主題。如需如何新增CORS組態的指示,請參閱 設定跨來源資源共用 (CORS)。
重要
在 S3 主控台中,CORS組態必須為 JSON。
AllowedMethods
元素
在CORS組態中,您可以指定 AllowedMethods
元素的下列值。
-
GET
-
PUT
-
POST
-
DELETE
-
HEAD
AllowedOrigins
元素
在 AllowedOrigins
元素中,可指定希望允許跨網域要求的來源,例如 http://www.example.com
。原始字串只可包含一個 '*
' 萬用字元,例如 http://*.example.com
。您可以選擇性地指定 '*
' 作為來源,允許所有來源傳送跨來源要求。您也可以指定 https
而只允許安全的來源。
AllowedHeaders
元素
AllowedHeaders
元素透過 Access-Control-Request-Headers
標頭,可指定在預檢要求中允許的標頭。標頭中的每個Access-Control-Request-Headers
標頭名稱都必須符合 元素中的對應項目。Amazon S3 在要求的回應中只會傳送允許的標頭。如需可用於 Amazon S3 請求的標頭範例清單,請前往 Amazon Simple Storage Service API參考指南中的常見請求標頭。
組態中的每個 AllowedHeaders 字串最多可以包含一個 * 萬用字元。例如,<AllowedHeader>x-amz-*</AllowedHeader>
會啟用所有 Amazon 專屬的標頭。
ExposeHeaders
元素
每個ExposeHeader
元素都會在您希望客戶能夠從其應用程式 (例如,從 JavaScriptXMLHttpRequest
物件) 存取的回應中識別標頭。如需常見 Amazon S3 回應標頭的清單,請前往 Amazon Simple Storage Service API參考指南中的常見回應標頭。
MaxAgeSeconds
元素
MaxAgeSeconds
元素會指定瀏覽器可以快取資源、HTTP方法和原始伺服器所識別之飛行前請求回應的時間,以秒為單位。
CORS 組態範例
除了使用 Amazon S3 網站端點存取網站之外,您也可以使用自己的網域 (例如 example1.com
) 提供內容。如需使用自有網域的資訊,請參閱「教學課程:使用向 Route 53 註冊的自訂網域設定靜態網站」。
下列範例CORS組態有三個規則,指定為CORSRule
元素:
-
第一個規則允許來自
http://www.example1.com
原始伺服器的跨原始伺服器 POST、 PUT和 DELETE請求。此規則也允許透過 標頭進行飛行前OPTIONS請求中的所有Access-Control-Request-Headers
標頭。為了回應飛行前OPTIONS請求,Amazon S3 會傳回請求的標頭。 -
第二項規則允許與第一項規則相同的跨來源要求,但該規則適用於另一個來源 (
http://www.example2.com
)。 -
第三個規則允許來自所有原始伺服器的跨原始伺服器GET請求。
*
萬用字元表示所有來源。
此CORS組態也允許選用組態參數,如下列CORS組態所示。在此範例中,CORS組態允許來自http://www.example.com
原始伺服器的跨原始伺服器 POST、 PUT和 DELETE請求。
先前組態中的 CORSRule
元素,包含下列選用元素:
-
MaxAgeSeconds
—指定瀏覽器快取 Amazon S3 對指定資源的飛行前OPTIONS請求回應的時間,以秒為單位 (在此範例中為 3000)。藉由快取回應的方式,瀏覽器便不需要在原始要求重複時,將再次向 Amazon S3 傳送預檢要求。 -
ExposeHeaders
—識別客戶可以從其應用程式 (例如,從 JavaScriptXMLHttpRequest
物件x-amz-id-2
) 存取的回應標頭 (在此範例中為x-amz-server-side-encryption
x-amz-request-id
、 和 )。