牛骨文教育服务平台(让学习变的简单)

基本响应

从路由返回字串

最基本的响应就是从 Laravel 的路由返回字串:

Route::get("/", function()
{
    return "Hello World";
});

建立自定义响应

但是以大部分的路由及控制器所执行的动作来说,你需要返回完整的 IlluminateHttpResponse 实例或是一个视图。返回一个完整的 Response 实例时,你能够自定义响应的 HTTP 状态码以及响应头。Response 实例继承了 SymfonyComponentHttpFoundationResponse 类,它提供了很多方法来建立 HTTP 响应。

use IlluminateHttpResponse;

return (new Response($content, $status))
              ->header("Content-Type", $value);

为了方便起见,你可以使用辅助方法 response:

return response($content, $status)
              ->header("Content-Type", $value);

>提示: 有关 Response 方法的完整列表可以参照 API 文档 以及 Symfony API 文档.

在响应送出视图

如果想要使用 Response 类的方法,但最终返回视图给用户,你可以使用简便的 view 方法:

return response()->view("hello")->header("Content-Type", $type);

附加 Cookies 到响应

return response($content)->withCookie(cookie("name", "value"));

链式方法

切记,大多数的 Response 方法都是可以链式调用的,用以建立流畅的响应:

return response()->view("hello")->header("Content-Type", $type)
                 ->withCookie(cookie("name", "value"));