一個未經身份驗證的靜態網站 (www.example.com) 託管在 Amazon S3 上並透過 CloudFront 交付,該網站使用 AWS WAF。該網站包含一個註冊表單,會呼叫 Amazon API Gateway 端點,然後該端點會叫用一個 Lambda function,將資料轉發到外部 API。在測試期間,提交觸發了 CORS 錯誤。CloudFront 來源已配置為包含設定為 www.example.com 的 Access-Control-Allow-Origin 標頭。解決方案架構師應該怎麼做才能修復 CORS 錯誤?
選擇一個答案
點擊一個選項來檢查您的答案。
正確答案: 在 API Gateway API 端點上啟用 CORS。確保 API 返回的響應中包含設定為 www.example.com 的 Access-Control-Allow-Origin。.
為什麼這是答案
CORS 錯誤發生在瀏覽器端,當網頁嘗試從不同來源(origin)請求資源時。在本案例中,靜態網站(www.example.com)呼叫 API Gateway 端點,這是一個不同的來源。因此,API Gateway 必須在其響應中包含適當的 Access-Control-Allow-Origin 標頭,以允許 www.example.com 存取其資源。在 API Gateway 上啟用 CORS 並設定 Access-Control-Allow-Origin 為 www.example.com 即可解決此問題。 修改 S3 儲存貯體 CORS 配置不相關,因為 S3 託管的是靜態內容,而不是 API 端點。AWS WAF 處理的是安全性,不直接管理 CORS 標頭。在 Lambda function 中啟用 CORS 是不必要的,因為 API Gateway 已經處理了 CORS 預檢請求和響應標頭,Lambda function 只需要處理業務邏輯。
通過考試 — 無需無休止地尋找答案
集中一處獲取此考試的所有核實題目和解釋,節省數小時的準備時間。1,000 多種認證 · 20 多種語言 · 免費開始。
更快通過您的考試 → 無需信用卡