在StackOverflow上有這樣的問題,我知道。如何檢索json數據到laravel控制器
相信我,我試過所有的解決方案無濟於事。
我一直在試圖從angularjs這個JSON數據發佈到laravel控制器的方法:
[
{
"id": 2,
"name": "add-user",
"display_name": "Add new user",
"description": "Create a new worker",
},
{
"id": 4,
"name": "add-role",
"display_name": "Add role",
"description": "Add user role",
}
]
這是代碼,這JSON數據會發布到laravel控制器:
$http({
method: 'POST',
url: '/api/roles/assignPermissions/' + name,
headers: { 'Content-Type' : 'application/json' },
data: $.param(role_perms)
}).success(function(data){
console.log(data);
});
現在在這個控制器方法中,我只想檢索這個json數據,並將其返回並顯示在控制檯中,以確保我在控制器中接收到它。
下面是控制器和我所做的所有嘗試獲取此json數據並將其返回。
控制器:
public function massAssignPerms(Request $request, $roleName)
{
$role = Role::where('name', $roleName)->first();
// this returned nothing
return json_decode(file_get_contents('php://input'),true);
// this returned: add-user=&add-role=
return file_get_contents('php://input');
// returned nothing
return json_decode($request->getContent(), true);
// returned empty array []
return $request->json()->all();
}
我無法找到有什麼錯我的代碼。或者它可能是我做錯了?
任何幫助將不勝感激。
你用什麼版本的laravel? – jackel414
請顯示'dd($ request)'的結果;' –
@ jackel414我正在使用laravel 5.3 –