假设这是一个请求的有效负载:
{name : 'John', age: 42}
您可以使用Request::all()
获取所有参数。
如果负载是原始类型如true
或42
,如何正确地获取请求有效载荷?
Request::getContent()
将其作为字符串接收,我也希望它们以正确的类型出现。
json_decode
将原始的json负载解码为一个数组:Route::post('/request', function () {
$payLoad = json_decode(request()->getContent(), true);
dd($payLoad['name']);
});
你应该获得
John
或者可以使用json_decode
来解码你的载荷,从查询参数或者POST数据中获取:
Route::get('/primitive', function () {
$payLoad = json_decode(request()->get('payload'));
dd($payLoad);
});
触发:
http://app.dev/primitive?payload={%20%22name%22:%20%22John%22,%20%22age%22:%2042,%20%22male%22:%20true%20}
你应该获得:
json_decode(request()->getContent())
。谢谢。 - zarax