Bagaimana untuk Membetulkan Ralat 419 POST dalam Permintaan Ajax dengan Laravel?

Barbara Streisand
Lepaskan: 2024-10-30 20:13:02
asal
180 orang telah melayarinya

How to Fix the 419 POST Error in Ajax Requests with Laravel?

Ajax LARAVEL 419 POST Ralat Selesai

Ralat ini biasanya berlaku apabila cuba membuat permintaan Ajax POST tanpa pengesahan token CSRF yang betul. Laravel melaksanakan perlindungan token CSRF untuk menghalang permintaan hasad daripada sumber luaran.

Masalah:

Anda menghadapi ralat POST semasa membuat panggilan Ajax ke titik akhir /company.

Penyelesaian:

Untuk menyelesaikan isu ini, anda perlu memasukkan token CSRF dalam permintaan Ajax anda. Anda boleh melakukan ini dengan menambahkan coretan kod berikut pada panggilan Ajax anda:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});
Salin selepas log masuk

Ini akan menambah token CSRF yang dijana pada pengepala permintaan Ajax anda, memastikan Laravel boleh mengesahkan bahawa permintaan itu datang daripada pengguna yang disahkan.

Penjelasan:

Laravel secara automatik menjana token CSRF unik untuk setiap sesi pengguna aktif. Token ini disimpan dalam teg meta dalam dokumen HTML anda:

<meta name="csrf-token" content="your-generated-token" />
Salin selepas log masuk

Apabila panggilan Ajax anda dibuat, token CSRF mesti sepadan dengan token yang disimpan dalam teg meta. Jika ia tidak sepadan, Laravel akan menolak permintaan dengan ralat 419.

Penyelesaian Alternatif:

Jika anda ingin mengecualikan laluan URI tertentu daripada pengesahan token CSRF , anda boleh menambahkannya pada tatasusunan berikut dalam perisian tengah VerifyCSRFToken:

protected $except = [
    '/route_you_want_to_ignore',
    '/route_group/*'
];
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 419 POST dalam Permintaan Ajax dengan Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!