Cross-Origin Resource Sharing (CORS) ヘッダーをレスポンスに追加 - Amazon CloudFront

Cross-Origin Resource Sharing (CORS) ヘッダーをレスポンスに追加

次のビューワーレスポンス関数は、レスポンスに Access-Control-Allow-Origin HTTP ヘッダーを追加します (まだ追加されていない場合)。このヘッダーは、Cross-Origin Resource Sharing (CORS) の一部です。ヘッダーの値 (*) は、任意のオリジンからのコードがこのリソースにアクセスできるように Web ブラウザに指示します。詳細については、MDN Web Docs Web サイトの「Access-Control-Allow-Origin」を参照してください。

この例を GitHub で見てみましょう

JavaScript runtime 2.0
async function handler(event) { const request = event.request; const response = event.response; // If Access-Control-Allow-Origin CORS header is missing, add it. // Since JavaScript doesn't allow for hyphens in variable names, we use the dict["key"] notation. if (!response.headers['access-control-allow-origin'] && request.headers['origin']) { response.headers['access-control-allow-origin'] = {value: request.headers['origin'].value}; console.log("Access-Control-Allow-Origin was missing, adding it now."); } return response; }
JavaScript runtime 1.0
function handler(event) { var response = event.response; var headers = response.headers; // If Access-Control-Allow-Origin CORS header is missing, add it. // Since JavaScript doesn't allow for hyphens in variable names, we use the dict["key"] notation. if (!headers['access-control-allow-origin']) { headers['access-control-allow-origin'] = {value: "*"}; console.log("Access-Control-Allow-Origin was missing, adding it now."); } return response; }