【发布时间】:2017-05-26 18:16:17
【问题描述】:
我知道在 StackOverflow 上有这样的问题。
相信我,我已经尝试了所有解决方案,但都无济于事。
我一直在尝试将此 json 数据从 angularjs 发布到 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?
-
请显示
dd($request);的结果 -
@jackel414 我正在使用 laravel 5.3
标签: angularjs json laravel request