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中文網其他相關文章!