API Gateway CORS: 'Access-Control-Allow-Origin' ヘッダーがありません 質問する

API Gateway CORS: 'Access-Control-Allow-Origin' ヘッダーがありません 質問する

CORS は API Gateway を通じて設定され、Access-Control-Allow-Originヘッダーも設定されていますが、Chrome 内で AJAX から API を呼び出そうとすると、次のエラーが表示されます。

XMLHttpRequest を読み込めませんhttp://XXXXX.execute-api.us-west-2.amazonaws.com/beta/YYYYY要求されたリソースに「Access-Control-Allow-Origin」ヘッダーが存在しません。したがって、オリジン「null」はアクセスを許可されません。応答の HTTP ステータス コードは 403 でした。

URLを取得しようとしました郵便配達員上記のヘッダーが正常に渡されたことが示されます。

渡されたヘッダー

そして、OPTIONS の回答から:

レスポンスヘッダー

JSON-P に戻さずにブラウザから API を呼び出すにはどうすればよいですか?

ベストアンサー1

私も同じ問題に遭遇しました。以下の解決策を見つけるのに 10 時間を費やしました。

詳しくはこちら

// handler.js
"use strict";

module.exports.hello = function (event, context, callback) {
  const response = {
    statusCode: 200,
    headers: {
      "Access-Control-Allow-Origin": "*", // Required for CORS support to work
      "Access-Control-Allow-Credentials": true, // Required for cookies, authorization headers with HTTPS
    },
    body: JSON.stringify({ message: "Hello World!" }),
  };

  callback(null, response);
};

おすすめ記事