当前位置: 首页 > 文档资料 > Laravel 入门教程 >

回应(Response)

优质
小牛编辑
128浏览
2023-12-01

Web应用程序根据许多参数以多种方式响应用户的请求。 本章将详细介绍Laravel Web应用程序中的响应。

基本回应

Laravel提供了几种不同的方式来返回响应。 响应可以从路由或从控制器发送。 可以发送的基本响应是简单的字符串,如下面的示例代码所示。 此字符串将自动转换为适当的HTTP响应。

例子 (Example)

Step 1 - 将以下代码添加到app/Http/routes.php文件中。

app/Http/routes.php

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

Step 2 - Visit以下URL以测试基本响应。

http://localhost:8000/basic_response

Step 3 - 输出将如下图所示。

基本回应

附加标题

可以使用header()方法将响应附加到标头。 我们还可以附加一系列标题,如下面的示例代码所示。

return response($content,$status)
   ->header('Content-Type', $type)
   ->header('X-Header-One', 'Header Value')
   ->header('X-Header-Two', 'Header Value');

例子 (Example)

请观察以下示例以了解有关Response的更多信息 -

Step 1 - 将以下代码添加到app/Http/routes.php文件中。

app/Http/routes.php

Route::get('/header',function(){
   return response("Hello", 200)->header('Content-Type', 'text/html');
});

Step 2 - 访问以下URL以测试基本响应。

http://localhost:8000/header

Step 3 - 输出将如下图所示。

你好

附加Cookie

withcookie()辅助方法用于附加cookie。 使用此方法生成的cookie可以通过使用响应实例调用withcookie()方法来附加。 默认情况下,Laravel生成的所有cookie都经过加密和签名,以便客户端无法修改或读取它们。

例子 (Example)

请注意以下示例以了解有关附加Cookie的更多信息 -

Step 1 - 将以下代码添加到app/Http/routes.php文件中。

app/Http/routes.php

Route::get('/cookie',function(){
   return response("Hello", 200)->header('Content-Type', 'text/html')
      ->withcookie('name','Virat Gandhi');
});

Step 2 - Visit以下URL以测试基本响应。

http://localhost:8000/cookie

Step 3 - 输出将如下图所示。

你好

JSON响应

可以使用json方法发送JSON响应。 此方法将自动将Content-Type标头设置为application/jsonjson方法将自动将数组转换为适当的json响应。

例子 (Example)

请观察以下示例以了解有关JSON响应的更多信息 -

Step 1 - 在app/Http/routes.php文件中添加以下行。

app/Http/routes.php

Route::get('json',function(){
   return response()->json(['name' => 'Virat Gandhi', 'state' => 'Gujarat']);
});

Step 2 - 访问以下URL以测试json响应。

http://localhost:8000/json

Step 3 - 输出将如下图所示。

Json回复