1
私のapiの応答ヘッダーに正しく設定しました。aws cognito && apiGatewayは状態401を返します。
私は、ヘッダー(「認証」)に取り付けた検証トークン で郵便配達を経由して、私のAPIをテストしたとき、それは私が私のフロントエンドがそのAPIを要求するコードをフェッチ確認200
を返され、決してがあるようですありませんエラーまたは障害。
どうすればできますか?私は今苦しんでいるものと同じものから苦しんだ誰もしません。
追加:
私のフロントエンドフェッチコードは次のようになります。
export const getDoc = async (docId, token) => {
const path = `${apiGateway.URL}`;
const body = {
docId: docId
};
const headers = {
Authorization: token,
'Content-Type': 'application/json'
};
const result = await fetch(path, {
body,
headers,
});
if (result.status !== 200) {
throw new Error('failed to get doc');
}
return result.json();
};
@VijayanathViswanathanもちろん、私はAPIゲートウェイで基本的なCORS設定を行っています。私が上記のように、ポストマンのAPI呼び出しの成功。私のフロントエンドコードでは機能しません。 –
'Authorization'リクエストヘッダと 'Content-Type:application/json'の両方がプリフライトを行うためにブラウザを起動します。だから問題はまさに私の前のコメントで説明したとおりです:あなたはOPTIONS要求の承認を必要としないようにサーバーを再構成する必要があります。その理由は、ブラウザは、そのプリフライトOPTIONSリクエストを発行するときにAuthorizationリクエストヘッダを送信しないからです。なぜなら、OPTIONS要求の目的はブラウザがサーバーに尋ねることだからです。Authorizationヘッダーを持つクロスオリジン要求を許可していますか? – sideshowbarker