2016-04-23 31 views
0

我很努力地將JSON數據發佈到Laravel。我嘗試了很多方式來訪問我的控制器中的數據,但是,它返回[]。我不確定我做錯了什麼。我將不勝感激任何幫助!Laravel訪問JSON Post

console.log(JSON.stringify(data))輸出:

[{"ContactFirstName":"John","FamilyLastName":"Doe"}, {"ContactFirstName":"John","FamilyLastName":"Doe"}] 

的AJAX腳本:

$.ajaxSetup({ 
      headers: { 
       'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content') 
      } 
     }); 
$.ajax({ 
      url: POST_URL, 
      type: 'POST', 
      dataType: "json", 
      data: data, 
      success: function (data) { 
       console.log(data); 
       alert(JSON.stringify(data)); 
      }, 
      error: function (xhr, ajaxOptions, thrownError) { 
       console.log(xhr.status); 
       console.log(thrownError); 
      } 
     }); 

的Laravel控制器:

$json = Request::json()->all(); 

return $json; 

它返回[]。我也嘗試過Input :: all(),並沒有運氣。

+0

你需要用laravel再次序列化它嗎?不知道,但我認爲數據不應該是ajax'data:data,'或使用'data:{jsonData:data}的字符串,'然後嘗試檢索值 –

+1

您正在發送一些沒有標識符的值似乎是一個數組[{}]不是對象{}。嘗試'數據:{jsonData:data}'在laravel'Request :: input('jsonData')' –

+0

這工作!謝謝!我花了太多時間試圖弄清楚。 – user1687763

回答

0
$JSON = file_get_contents('php://input');