Rumah > pembangunan bahagian belakang > tutorial php > Ralat Laravel 5.5 AJAX 419: Bagaimana untuk Membetulkan Isu Token CSRF?

Ralat Laravel 5.5 AJAX 419: Bagaimana untuk Membetulkan Isu Token CSRF?

DDD
Lepaskan: 2024-12-01 11:08:11
asal
369 orang telah melayarinya

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

Panggilan Laravel 5.5 AJAX Mengembalikan Status Tidak Diketahui 419: Menyelesaikan Isu Token CSRF

Soalan:

Saya sedang melaksanakan Panggilan AJAX dalam Laravel 5.5 tetapi menemui "419 (status tidak diketahui)" ralat. Walaupun tidak mempunyai borang pada halaman saya, saya mengesyaki isu itu terletak pada token CSRF. Bagaimanakah saya boleh menyelesaikan perkara ini?

Jawapan:

Pihak Pelanggan:

Dalam bahagian kepala HTML anda, masukkan berikut:

<meta name="csrf-token" content="{{ csrf_token() }}">
Salin selepas log masuk

Ini menjana token CSRF unik yang pelayan akan gunakan untuk mengesahkan masuk permintaan.

Permintaan AJAX:

Ubah suai permintaan AJAX anda untuk memasukkan token CSRF dalam pengepala:

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

Ini memastikan pelayan boleh mengesahkan asal permintaan dan menghalang serangan CSRF.

Laravel Middleware (Pilihan):

Laravel secara automatik menggunakan middleware CSRF untuk melindungi permintaan POST. Untuk melumpuhkan perisian tengah ini untuk laluan tertentu (cth., yang mengendalikan panggilan AJAX anda), tambahkan baris berikut pada perisian tengah AppHttpMiddlewareVerifyCsrfToken anda:

/**
 * The URIs that should be excluded from CSRF verification.
 *
 * @var array
 */
protected $except = [
    '/fetch-company/*',
];
Salin selepas log masuk

Rujukan:

  • [Laravel CSRF Perlindungan](https://laravel.com/docs/5.5/csrf)
  • [Token CSRF untuk Permintaan AJAX](https://laravel.com/docs/5.5/csrf#csrf-token-for -ajax-requests)

Atas ialah kandungan terperinci Ralat Laravel 5.5 AJAX 419: Bagaimana untuk Membetulkan Isu Token CSRF?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan