簡體   English   中英

Laravel中的Ajax 419錯誤

[英]ajax 419 Error in Laravel

您好,我遇到419錯誤,即使我嘗試在刀片語法url,常規javasript url,jason數據格式或使用url發送我的數據之間切換技術,該錯誤仍會持續顯示。請幫助我在頭中還包括X-CSRF:

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

我的電話:

$.ajaxSetup({
    headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
});
$.ajax({
  url:'{{url("/HeatMapCoordinates")}}',
  data:{"finalPointArray" :finalPointsMap,
        "tourId":tourId
        },
  dataType: 'html',
  async:true,
  type:'post',
  processData: false,
  contentType: false,
  success:function(response){
    console.log('response');
  },
  error:function(e){
    console.log('error');
  }
});
}

我的路線:Route :: resource('/ HeatMapCoordinates','HeatMapCoordinatesController'); 我的控制器:

    public function store(Request $request)
    {

        $this->validate($request, array(
            'finalPointArray' => 'required',
            'tourId' => 'required',
        ));

.....}

您尚未包含CSRF令牌。 該字段稱為csrf-token而不是_token ,它必須包含在""中才能成為有效的選擇器。

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

嘗試在ajax中調用控制器路由時,無需對其使用刀片語法。 您可以像這樣簡單地調用網址

url: '/HeatMapCoordinates'

如果您在html頁面中包含了csrf令牌,請嘗試將其包含在ajax數據中

'_token': $('input[name=_token]').val(),

您的代碼將如下所示

$.ajax({
  url: '/HeatMapCoordinates',
  data:{ 
           "_token": $('input[name=_token]').val(),
           "finalPointArray" :finalPointsMap,
           "tourId":tourId
        },

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM