阅读(3662) (1)

其他响应

2016-02-24 15:51:45 更新

使用辅助方法 response 可以轻松的产生其他类型的响应实例。当你调用辅助方法 response 且不带任何参数时,将会返回 Illuminate\Contracts\Routing\ResponseFactory Contract 的实做。Contract 提供了一些有用的方法来产生响应。

建立 JSON 响应

json 方法会自动将响应头的 Content-Type 配置为 application/json:

return response()->json(['name' => 'Abigail', 'state' => 'CA']);

建立 JSONP 响应

return response()->json(['name' => 'Abigail', 'state' => 'CA'])
                 ->setCallback($request->input('callback'));

建立文件下载的响应

return response()->download($pathToFile);

return response()->download($pathToFile, $name, $headers);

return response()->download($pathToFile)->deleteFileAfterSend(true);

提醒:管理文件下载的扩展包,Symfony HttpFoundation,要求下载文件名必须为 ASCII。