Laravel中正确地返回HTTP状态码方法示例


Posted in PHP onSeptember 10, 2019

Laravel中正确地返回HTTP状态码方法示例

在 API 中返回状态码是很重要的,因为响应处理程序是工作在 API 的响应状态码之上的。

写 API 时其中有一个重要的地方是更好的处理响应状态码。以前,我一般会使用不常用的 Integer 类型数字作为 HTTP 状态码 。看下面的这个例子:

<?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 的调用期间 ,如果数据已被创建,那么将会响应 HTTP 201 状态码,但是很多的开发者并不知道 201 状态码,他们更熟悉 200 成功状态码 。使用 Symfony Response 类可以解决这个问题 。它包含了所有的 HTTP 状态码,并且使用更简单易懂的命名 。以上的代码可以修改为如下代码:

<?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 状态码,先来看看其中的一些状态码:

Laravel中正确地返回HTTP状态码方法示例

虽然我不觉得直接写数值的 HTTP 状态码是一个坏习惯,但是使用

HTTP 状态码时用一些不解自明的命名会更好。大家编码快乐!

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

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PHP 事务处理数据实现代码
May 13 PHP
PHP文件注释标记及规范小结
Apr 01 PHP
php_screw安装使用教程(另一个PHP代码加密实现)
May 29 PHP
php生成shtml类用法实例
Dec 09 PHP
php堆排序实现原理与应用方法
Jan 03 PHP
PHP SPL标准库之SplFixedArray使用实例
May 12 PHP
php ci 获取表单中多个同名input元素值的代码
Mar 25 PHP
php版微信公众号接口实现发红包的方法
Oct 14 PHP
PHP解决中文乱码
Apr 28 PHP
thinkPHP通用控制器实现方法示例
Nov 23 PHP
自写的利用PDO对mysql数据库增删改查操作类
Feb 19 PHP
windows系统php环境安装swoole具体步骤
Mar 04 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
Sep 10 #PHP
mysqli扩展无法在PHP7下升级问题的解决
Sep 10 #PHP
PHP 模拟登陆功能实例详解
Sep 10 #PHP
Yii框架日志操作图文与实例详解
Sep 09 #PHP
php求斐波那契数的两种实现方式【递归与递推】
Sep 09 #PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
Sep 09 #PHP
Yii框架常见缓存应用实例小结
Sep 09 #PHP
You might like
php获取通过http协议post提交过来xml数据及解析xml
2012/12/16 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
php+ajax实现图片文件上传功能实例
2014/06/17 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
Zend Framework框架教程之Zend_Db_Table_Rowset用法实例分析
2016/03/21 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
JS+CSS实现简易实用的滑动门菜单效果
2015/09/18 Javascript
JS+CSS实现的日本门户网站经典选项卡导航效果
2015/09/27 Javascript
js操作数组函数实例小结
2015/12/10 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
BootStrap 页签切换失效的解决方法
2017/08/17 Javascript
angular项目中bootstrap-datetimepicker时间插件的使用示例
2018/03/15 Javascript
JS实现图片拖拽交换效果
2018/11/30 Javascript
JavaScript中concat复制数组方法浅析
2019/01/20 Javascript
Postman动态获取返回值过程详解
2020/06/30 Javascript
JavaScript canvas实现雨滴特效
2021/01/10 Javascript
[50:11]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第三场
2018/04/09 DOTA
python strip()函数 介绍
2013/05/24 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
2018/03/13 Python
python opencv读mp4视频的实例
2018/12/07 Python
python实现坦克大战游戏 附详细注释
2020/03/27 Python
Python函数中的可变长参数详解
2019/09/12 Python
python/Matplotlib绘制复变函数图像教程
2019/11/21 Python
TUMI新加坡官网:国际领先的商旅箱包品牌
2019/01/12 全球购物
俄罗斯儿童和青少年服装、鞋子及配件的在线商店:Orby
2020/02/20 全球购物
YSL圣罗兰美妆俄罗斯官网:Yves Saint Lauret RU
2020/09/23 全球购物
实习生自荐信范文分享
2013/11/27 职场文书
乡镇干部十八大感言
2014/02/17 职场文书
艺术设计专业个人求职信
2014/04/10 职场文书
绿色家庭事迹材料
2014/05/01 职场文书
党代会心得体会
2014/09/04 职场文书
招标保密承诺书
2015/01/20 职场文书
史上最全的军训拉歌口号
2015/12/25 职场文书
小学四年级作文之最感动的一件事
2019/11/01 职场文书