首頁 >後端開發 >php教程 >Laravel 5.5 Ajax 錯誤 419:如何修復 CSRF 令牌問題?

Laravel 5.5 Ajax 錯誤 419:如何修復 CSRF 令牌問題?

DDD
DDD原創
2024-12-06 13:48:17459瀏覽

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

Laravel 5.5 Ajax 呼叫錯誤:419(未知狀態)

在Laravel 5.5 中執行Ajax 調用時,您可能會遇到以下錯誤:訊息“419(未知狀態)”。這通常源自於跨站點請求偽造 (CSRF) 保護機制的問題。以下是解決此問題的方法:

確保 CSRF 令牌可用

Laravel 需要 CSRF 令牌來防止執行惡意請求。確保刀片範本的標頭部分中存在CSRF 令牌元標記:

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

在Ajax 中存取CSRF 令牌

配置您的Ajax 請求以自動檢索並在標頭中包含CSRF令牌:

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

範例已更新程式碼:

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

其他提示

以上是Laravel 5.5 Ajax 錯誤 419:如何修復 CSRF 令牌問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn