Wie behebe ich den 419 POST-Fehler in Ajax-Anfragen mit Laravel?

Barbara Streisand
Freigeben: 2024-10-30 20:13:02
Original
180 Leute haben es durchsucht

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

Ajax LARAVEL 419 POST-Fehler behoben

Dieser Fehler tritt normalerweise auf, wenn versucht wird, eine Ajax-POST-Anfrage ohne ordnungsgemäße CSRF-Token-Überprüfung zu stellen. Laravel implementiert den CSRF-Token-Schutz, um böswillige Anfragen von externen Quellen zu verhindern.

Problem:

Beim Tätigen eines Ajax-Aufrufs an den /company-Endpunkt tritt ein POST-Fehler auf.

Lösung:

Um dieses Problem zu beheben, müssen Sie das CSRF-Token in Ihre Ajax-Anfrage aufnehmen. Sie können dies tun, indem Sie den folgenden Codeausschnitt zu Ihrem Ajax-Aufruf hinzufügen:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});
Nach dem Login kopieren

Dadurch wird das generierte CSRF-Token zum Header Ihrer Ajax-Anfragen hinzugefügt, um sicherzustellen, dass Laravel überprüfen kann, ob die Anfrage von kommt ein authentifizierter Benutzer.

Erklärung:

Laravel generiert automatisch ein eindeutiges CSRF-Token für jede aktive Benutzersitzung. Dieses Token wird in einem Meta-Tag in Ihrem HTML-Dokument gespeichert:

<meta name="csrf-token" content="your-generated-token" />
Nach dem Login kopieren

Wenn Ihr Ajax-Aufruf erfolgt, muss das CSRF-Token mit dem im Meta-Tag gespeicherten Token übereinstimmen. Wenn sie nicht übereinstimmen, lehnt Laravel die Anfrage mit einem 419-Fehler ab.

Alternative Lösung:

Wenn Sie bestimmte URI-Pfade von der CSRF-Token-Überprüfung ausschließen möchten , können Sie sie dem folgenden Array in der VerifyCSRFToken-Middleware hinzufügen:

protected $except = [
    '/route_you_want_to_ignore',
    '/route_group/*'
];
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie behebe ich den 419 POST-Fehler in Ajax-Anfragen mit Laravel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!