Laravel響應


基本響應

每個請求都有響應。Laravel提供了幾種不同的方法來返回響應。響應可以是來自路由或控制器傳送。傳送基本響應 - 如在下面範例程式碼所示出的簡單字串。該字串將被自動轉換為相應的HTTP響應。

範例

第1步 -將下面的程式碼新增到 app/Http/routes.php 檔案。

app/Http/routes.php

Route::get('/basic_response', function () {
   return 'Hello World';
});
第2步 - 存取以下網址進行測試的基本響應。

http://localhost:8000/basic_response

第3步 - 輸出結果如下圖所示。

附加頭

響應可以使用header()方法附加到頭。我們還可以將一系列報頭新增,如下範例程式碼所示。

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

範例

第1步 -下面的程式碼新增到 app/Http/routes.php 檔案。

app/Http/routes.php

Route::get('/header',function(){
   return response("Hello", 200)->header('Content-Type', 'text/html');
});
第2步 - 存取以下網址進行測試的基本響應。

http://localhost:8000/header

第3步 - 輸出結果如下圖所示。

附加Cookies

withcookie()輔助方法用於附加 cookies。使用這個方法生成的 cookie 可以通過呼叫withcookie()方法響應範例附加。預設情況下,通過Laravel 生成的所有cookie被加密和簽名,使得它們不能被修改或由用戶端讀取。

範例

第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');
});
第2步 - 存取以下網址進行測試的基本響應。

http://localhost:8000/cookie

第3步 - 輸出結果如下圖所示。

JSON響應

JSON響應可以使用 json 方法傳送。這種方法會自動設定Content-Type頭為application/json。JSON的方法將陣列自動轉換成合適的JSON響應。

範例

第1步 -新增下面一行到檔案 - app/Http/routes.php。

app/Http/routes.php

Route::get('json',function(){
   return response()->json(['name' => 'Yiibai', 'state' => 'Hainan']);
});
第2步 - 存取以下網址測試JSON響應。

http://localhost:8000/json

第3步 - 輸出結果如下圖所示。