ホームページ > バックエンド開発 > PHPチュートリアル > Laravel 5.5 AJAX 419 エラー: CSRF トークンの問題を修正するには?

Laravel 5.5 AJAX 419 エラー: CSRF トークンの問題を修正するには?

DDD
リリース: 2024-12-01 11:08:11
オリジナル
369 人が閲覧しました

Laravel 5.5 AJAX 419 Error: How to Fix CSRF Token Issues?

Laravel 5.5 AJAX 呼び出しが不明なステータス 419 を返す: CSRF トークンの問題の解決

質問:

Laravel 5.5 での AJAX 呼び出しですが、「419」が発生します(不明な状態)」というエラーが発生しました。私のページにはフォームがありませんが、問題は CSRF トークンにあると思われます。これを解決するにはどうすればよいですか?

回答:

クライアント側:

HTML ヘッド セクションに、以下:

<meta name="csrf-token" content="{{ csrf_token() }}">
ログイン後にコピー

これにより、一意の CSRF トークンが生成されます。サーバーは受信リクエストを検証するために使用します。

AJAX リクエスト:

AJAX リクエストを変更してヘッダーに CSRF トークンを含めます:

$.ajaxSetup({
  headers: {
    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  }
});
ログイン後にコピー

これにより、サーバーはリクエストの発信元を検証し、CSRF を防ぐことができます。

Laravel ミドルウェア (オプション):

Laravel は、POST リクエストを保護するために CSRF ミドルウェアを自動的に適用します。特定のルート (AJAX 呼び出しを処理するルートなど) に対してこのミドルウェアを無効にするには、AppHttpMiddlewareVerifyCsrfToken ミドルウェアに次の行を追加します:

/**
 * The URIs that should be excluded from CSRF verification.
 *
 * @var array
 */
protected $except = [
    '/fetch-company/*',
];
ログイン後にコピー

References:

  • [Laravel CSRF保護](https://laravel.com/docs/5.5/csrf)
  • [AJAX リクエスト用の CSRF トークン](https://laravel.com/docs/5.5/csrf#csrf-token-for -ajax-requests)

以上がLaravel 5.5 AJAX 419 エラー: CSRF トークンの問題を修正するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート