ホームページ >バックエンド開発 >Golang >私のブラウザがクロスオリジン応答からの Cookie の受け入れを拒否するのはなぜですか?

私のブラウザがクロスオリジン応答からの Cookie の受け入れを拒否するのはなぜですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-21 00:23:12345ブラウズ

Why Does My Browser Refuse to Accept Cookies from a Cross-Origin Response?

ブラウザはクロスオリジン応答からの Set-Cookie ヘッダーの尊重を拒否します

アプリケーションはバックエンドから HTTP Cookie を設定する際に問題が発生しており、後続のリクエストのためにそれを取得します。この問題を解決するには、クライアント コードでの withCredentials の配置に対処する必要があります。

const axiosAuth = axios.create({
  validateStatus: (status: number) => {
    return status >= 200 && status < 300;
  },
  headers: {
    Accept: `application/json`,
    'Content-Type': 'application/json',
    withCredentials: true, // Incorrect
  },
});

の代わりに、次のようにする必要があります。

const axiosAuth = axios.create({
  validateStatus: (status: number) => {
    return status >= 200 && status < 300;
  },
  headers: {
    Accept: `application/json`,
    'Content-Type': 'application/json',
  },
  withCredentials: true, // Correct
});

配置修正されたコードに見られるように、リクエスト プロパティとして withCredentials を使用すると、ブラウザーはクロスオリジン リクエストの Cookie を送受信できるようになります。これにより、フロントエンドが認証の目的で、refreshToken Cookie を適切に設定し、アクセスできるようになります。

以上が私のブラウザがクロスオリジン応答からの Cookie の受け入れを拒否するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。