Mengapa Laravel API Mengembalikan Kod Status 419 pada Kaedah POST dan PUT
Dalam Laravel, kod status HTTP 419 semasa permintaan POST atau PUT sering menandakan ketidakpadanan token CSRF. Token ini, digunakan untuk menghalang pemalsuan permintaan merentas tapak (CSRF), boleh mengganggu operasi API RESTful.
Penyelesaian untuk Laravel 5.4 atau Kemudian
Dalam Laravel 5.4 dan lebih tinggi, pengawal API khusus boleh dibuat menggunakan php artisan make:controller ApiController. Pengawal ini diletakkan dalam direktori app/Http/Controllers/API, dan ia tidak termasuk pengesahan token CSRF secara lalai.
Penyelesaian untuk Laravel 5.3 dan Terdahulu
Dua pendekatan boleh digunakan untuk versi terdahulu Laravel:
Tentukan Laluan Dikecualikan:
Tambahkan kod berikut pada apl/Http/Middleware/VerifyCsrfToken anda .php middleware:
<code class="php">protected $except = [ 'api/*', ];</code>
Gunakan api.php:
Jika menggunakan Laravel 5.5, cipta laluan baharu/fail api.php dan tentukan laluan yang tidak memerlukan pengesahan token CSRF. Untuk versi yang lebih lama, buat fail app/Http/routes.php yang berasingan dan masukkan laluan dalam fail ini dan bukannya route/web.php.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Kod Status Laravel API 419 untuk Permintaan POST dan PUT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!