主頁 > 知識庫 > Laravel中正確地返回HTTP狀態(tài)碼方法示例

Laravel中正確地返回HTTP狀態(tài)碼方法示例

熱門標簽:阿里云 Mysql連接數(shù)設(shè)置 Linux服務(wù)器 科大訊飛語音識別系統(tǒng) 銀行業(yè)務(wù) 團購網(wǎng)站 電子圍欄 服務(wù)器配置

在 API 中返回狀態(tài)碼是很重要的,因為響應(yīng)處理程序是工作在 API 的響應(yīng)狀態(tài)碼之上的。

寫 API 時其中有一個重要的地方是更好的處理響應(yīng)狀態(tài)碼。以前,我一般會使用不常用的 Integer 類型數(shù)字作為 HTTP 狀態(tài)碼 ??聪旅娴倪@個例子:

?php 
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Post;
Class PostsController extends Controller{
 public function store(){
 $post = new Post(request()->only('title', 'description'));
 request()->user()->posts()->save($post);
 return response()->json(['post' => $post], 201);
 }
}

在 API 的調(diào)用期間 ,如果數(shù)據(jù)已被創(chuàng)建,那么將會響應(yīng) HTTP 201 狀態(tài)碼,但是很多的開發(fā)者并不知道 201 狀態(tài)碼,他們更熟悉 200 成功狀態(tài)碼 。使用 Symfony Response 類可以解決這個問題 。它包含了所有的 HTTP 狀態(tài)碼,并且使用更簡單易懂的命名 。以上的代碼可以修改為如下代碼:

?php 
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Post;
use Symfony\Component\HttpFoundation\Response;
Class PostsController extends Controller{
 public function store(){
 $post = new Post(request()->only('title', 'description'));
 request()->user()->posts()->save($post);
 return response()->json(['post' => $post], Response::HTTP_CREATED);
 }
}

這個類包含了所有定義的 HTTP 狀態(tài)碼,先來看看其中的一些狀態(tài)碼:

雖然我不覺得直接寫數(shù)值的 HTTP 狀態(tài)碼是一個壞習慣,但是使用

HTTP 狀態(tài)碼時用一些不解自明的命名會更好。大家編碼快樂!

原文地址:https://medium.com/@naumancs/how-to-use-...

譯文地址:https://learnku.com/laravel/t/9684/how-t...

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:廣元 衢州 大理 衡水 棗莊 蚌埠 萍鄉(xiāng) 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Laravel中正確地返回HTTP狀態(tài)碼方法示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266