處理Laravel 的Ajax POST 請求中的CSRF 令牌不符
當嘗試使用Ajax POST 請求從資料庫中刪除資料時,開發人員可能會遇到「csrf_token 不符」錯誤。當 Laravel 框架採用跨站請求偽造 (CSRF) 保護,並且傳入請求缺少有效的 CSRF 令牌時,就會出現此問題。
要修正此問題,在 Ajax 中合併資料參數至關重要請求並包含「_token」和「id」值。 「_token」值是一個 CSRF 令牌,用於防止未經授權的請求,而「id」值標識要刪除的記錄。
修改後的Ajax 程式碼如下:
$('body').on('click', '.delteadd', function (e) { e.preventDefault(); if (confirm('Are you sure you want to Delete Ad ?')) { var id = $(this).attr('id'); $.ajax({ method: "POST", url: "{{url()}}/delteadd", data: { "_token": "{{ csrf_token() }}", "id": id } }).done(function( msg ) { if(msg.error == 0){ alert(msg.message); }else{ alert(msg.message); } }); } else { return false; } });
透過新增透過此資料參數,Ajax 要求可確保包含正確的CSRF 令牌和數據,繞過「csrf_token 不符」錯誤並允許從資料庫。
以上是如何解決 Laravel AJAX POST 請求中的「csrf_token 不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!