Rumah >pembangunan bahagian belakang >tutorial php >Laravel 5.5 Ajax Ralat 419: Bagaimana untuk Membetulkan Isu Token CSRF?
Ralat Panggilan Ajax Laravel 5.5: 419 (Status Tidak Diketahui)
Apabila melakukan panggilan Ajax dalam Laravel 5.5, anda mungkin menghadapi ralat dengan mesej "419 (status tidak diketahui)." Ini biasanya berpunca daripada isu dengan mekanisme perlindungan Pemalsuan Permintaan Silang Tapak (CSRF). Begini cara untuk menyelesaikan isu ini:
Pastikan Token CSRF Tersedia
Laravel memerlukan token CSRF untuk mengelakkan permintaan berniat jahat daripada dilaksanakan. Pastikan teg meta token CSRF hadir dalam bahagian pengepala templat bilah anda:
<meta name="csrf-token" content="{{ csrf_token() }}" />
Akses Token CSRF dalam Ajax
Konfigurasikan permintaan Ajax anda untuk mendapatkan semula secara automatik dan masukkan token CSRF dalam pengepala:
$.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } });
Contoh Kod Kemas Kini:
$('.company-selector li > a').click(function(e) { e.preventDefault(); var companyId = $(this).data("company-id"); $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $.ajax({ url: '/fetch-company/' + companyId, dataType : 'json', type: 'POST', data: {}, success:function(response) { console.log(response); } }); });
Petua Tambahan
Rujuk Dokumentasi Laravel untuk maklumat lanjut tentang perlindungan CSRF: https://laravel.com/docs/5.5/csrf
Atas ialah kandungan terperinci Laravel 5.5 Ajax Ralat 419: Bagaimana untuk Membetulkan Isu Token CSRF?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!