Laravel中正確地返回HTTP狀態(tài)碼方法示例
在 API 中返回狀態(tài)碼是很重要的,因?yàn)轫憫?yīng)處理程序是工作在 API 的響應(yīng)狀態(tài)碼之上的。
寫 API 時(shí)其中有一個(gè)重要的地方是更好的處理響應(yīng)狀態(tài)碼。以前,我一般會(huì)使用不常用的 Integer 類型數(shù)字作為 HTTP 狀態(tài)碼 。看下面的這個(gè)例子:
<?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)建,那么將會(huì)響應(yīng) HTTP 201 狀態(tài)碼,但是很多的開發(fā)者并不知道 201 狀態(tài)碼,他們更熟悉 200 成功狀態(tài)碼 。使用 Symfony Response 類可以解決這個(gè)問(wèn)題 。它包含了所有的 HTTP 狀態(tài)碼,并且使用更簡(jiǎn)單易懂的命名 。以上的代碼可以修改為如下代碼:
<?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); } }
這個(gè)類包含了所有定義的 HTTP 狀態(tài)碼,先來(lái)看看其中的一些狀態(tài)碼:
雖然我不覺得直接寫數(shù)值的 HTTP 狀態(tài)碼是一個(gè)壞習(xí)慣,但是使用
HTTP 狀態(tài)碼時(shí)用一些不解自明的命名會(huì)更好。大家編碼快樂(lè)!
原文地址:https://medium.com/@naumancs/how-to-use-...
譯文地址:https://learnku.com/laravel/t/9684/how-t...
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
PHP排序算法之堆排序(Heap Sort)實(shí)例詳解
這篇文章主要介紹了PHP排序算法之堆排序(Heap Sort),結(jié)合實(shí)例形式詳細(xì)分析了堆排序的原理、實(shí)現(xiàn)方法及相關(guān)使用注意事項(xiàng),需要的朋友可以參考下2018-04-04深思 PHP 數(shù)組遍歷的差異(array_diff 的實(shí)現(xiàn))
深思 PHP 數(shù)組遍歷的差異(array_diff 的實(shí)現(xiàn))...2006-06-06php使用json_decode后數(shù)字對(duì)象轉(zhuǎn)換成了科學(xué)計(jì)數(shù)法的解決方法
這篇文章主要介紹了php使用json_decode后數(shù)字對(duì)象轉(zhuǎn)換成了科學(xué)計(jì)數(shù)法的解決方法,涉及php操作json格式數(shù)據(jù)與數(shù)值轉(zhuǎn)換相關(guān)技巧,需要的朋友可以參考下2017-02-02PHP call_user_func和call_user_func_array函數(shù)的簡(jiǎn)單理解與應(yīng)用分析
這篇文章主要介紹了PHP call_user_func和call_user_func_array函數(shù)的簡(jiǎn)單理解與應(yīng)用,結(jié)合實(shí)例形式分析了PHP call_user_func和call_user_func_array函數(shù)的基本功能、用法及操作注意事項(xiàng),需要的朋友可以參考下2019-11-11推薦一款MAC OS X 下php集成開發(fā)環(huán)境mamp
這里給大家推薦一款在mac上搭建WEB服務(wù)器環(huán)境的集成環(huán)境安裝軟件,非常的好用,需要的朋友可以拿去,不用謝 ^_^2014-11-11php5.3 不支持 session_register() 此函數(shù)已啟用的解決方法
php從5.2.x升級(jí)到5.3.2.出來(lái)問(wèn)題了。有些原來(lái)能用的程序報(bào)錯(cuò)了,Deprecated: Function session_register() is deprecated2013-11-11