ホームページ >バックエンド開発 >PHPチュートリアル >AJAX POSTリクエストにおけるLaravelの「csrf_token不一致」エラーを解決する方法?

AJAX POSTリクエストにおけるLaravelの「csrf_token不一致」エラーを解決する方法?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-14 16:12:11674ブラウズ

How to Solve Laravel's

Laravel の Ajax POST リクエストでの CSRF トークンの不一致の処理

Ajax POST リクエストを使用してデータベースからデータを削除しようとすると、開発者は次のような問題に遭遇する可能性があります。 「csrf_token の不一致」エラー。この問題は、Laravel フレームワークがクロスサイト リクエスト フォージェリ (CSRF) 保護を採用しており、受信リクエストに有効な CSRF トークンがない場合に発生します。

この問題を修正するには、Ajax にデータ パラメーターを組み込むことが重要です。リクエストを作成し、「_token」と「id」の両方の値を含めます。 「_token」値は不正なリクエストを防ぐ CSRF トークンであり、「id」値は削除されるレコードを識別します。

以下の改訂された Ajax コード:

$('body').on('click', '.delteadd', function (e) {
    e.preventDefault();
    if (confirm('Are you sure you want to Delete Ad ?')) {
        var id = $(this).attr('id');
        $.ajax({
            method: "POST",
            url: "{{url()}}/delteadd",
            data: {
                "_token": "{{ csrf_token() }}",
                "id": id
            }
        }).done(function( msg ) {
            if(msg.error == 0){
                alert(msg.message);
            }else{
                alert(msg.message);
            }
        });
    } else {
        return false;
    }
});

このデータ パラメーターを使用すると、Ajax リクエストに正しい CSRF トークンとデータが確実に含まれるようになり、「csrf_token の不一致」エラーが回避され、正常なデータが許可されます。データベースから削除します。

以上がAJAX POSTリクエストにおけるLaravelの「csrf_token不一致」エラーを解決する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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