Heim >Backend-Entwicklung >PHP-Tutorial >Laravel 5.5 Ajax-Fehler 419: Wie behebt man CSRF-Token-Probleme?

Laravel 5.5 Ajax-Fehler 419: Wie behebt man CSRF-Token-Probleme?

DDD
DDDOriginal
2024-12-06 13:48:17464Durchsuche

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

Laravel 5.5 Ajax-Aufruffehler: 419 (Unbekannter Status)

Beim Durchführen eines Ajax-Aufrufs in Laravel 5.5 kann ein Fehler auftreten die Meldung „419 (unbekannter Status)“. Dies ist typischerweise auf ein Problem mit dem Cross-Site Request Forgery (CSRF)-Schutzmechanismus zurückzuführen. So beheben Sie dieses Problem:

Stellen Sie sicher, dass das CSRF-Token verfügbar ist

Laravel benötigt ein CSRF-Token, um die Ausführung böswilliger Anfragen zu verhindern. Stellen Sie sicher, dass im Header-Bereich Ihrer Blade-Vorlage ein CSRF-Token-Meta-Tag vorhanden ist:

<meta name="csrf-token" content="{{ csrf_token() }}" />

Zugriff auf CSRF-Token in Ajax

Konfigurieren Sie Ihre Ajax-Anfrage für den automatischen Abruf und fügen Sie das CSRF-Token in den Header ein:

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

Beispiel aktualisiert Code:

$('.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);
          }
     });
  });

Zusätzlicher Tipp

Weitere Informationen zum CSRF-Schutz finden Sie in der Laravel-Dokumentation: https://laravel.com/docs/ 5,5/csrf

Das obige ist der detaillierte Inhalt vonLaravel 5.5 Ajax-Fehler 419: Wie behebt man CSRF-Token-Probleme?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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