Response :: json() - Laravel 5.1

sen*_*nty 26 php arrays laravel laravel-5

我试图,return Response::json('data', $request);但是我收到一个错误:

ProjectsController.php第74行中的FatalErrorException:调用未定义的方法Illuminate\Http\Response :: json()

它在哪里Response::json()?我究竟做错了什么?

chr*_*con 52

使用laravel 5.1中的辅助函数:

return response()->json(['name' => 'Abigail', 'state' => 'CA']);
Run Code Online (Sandbox Code Playgroud)

这将创建一个实例\Illuminate\Routing\ResponseFactory.有关可能的参数,请参阅phpDocs:

/**
* Return a new JSON response from the application.
*
* @param string|array $data
* @param int $status
* @param array $headers
* @param int $options
* @return \Symfony\Component\HttpFoundation\Response 
* @static 
*/
public static function json($data = array(), $status = 200, $headers = array(), $options = 0){

    return \Illuminate\Routing\ResponseFactory::json($data, $status, $headers, $options);
}
Run Code Online (Sandbox Code Playgroud)


Ati*_*qur 10

经过足够的谷歌搜索后,我发现控制器的答案只需要一个反斜杠return \Response::json(['success' => 'hi, atiq']);.或者您可以返回return array('success' => 'hi, atiq');将在Laravel 5.2版中呈现为json 的数组.


RAS*_*ANA 9

你需要添加 use Response;在文件的标题中外观。

只有这样,您才能成功检索数据

return Response::json($data);
Run Code Online (Sandbox Code Playgroud)