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程序中防止盗链
Apr 09 PHP
坏狼的PHP学习教程之第1天
Jun 15 PHP
Cannot modify header information错误解决方法
Oct 08 PHP
PHP代码网站如何防范SQL注入漏洞攻击建议分享
Mar 01 PHP
php权重计算方法代码分享
Jan 09 PHP
php利用curl抓取新浪微博内容示例
Apr 27 PHP
php 判断网页是否是utf8编码的方法
Jun 06 PHP
PHP+MySQL插入操作实例
Jan 21 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
Jan 20 PHP
PHP实现的多维数组排序算法分析
Feb 10 PHP
php使用filter_var函数判断邮箱,url,ip格式示例
Jul 06 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开发的9条建议
2015/07/27 PHP
PHP合并discuz用户脚本的方法
2015/08/04 PHP
PHP+redis实现添加处理投票的方法
2015/11/14 PHP
jQuery checkbox全选/取消全选实现代码
2009/11/14 Javascript
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
jquery 回车事件实现代码
2011/08/23 Javascript
JavaScript初学者应注意的七个细节详细介绍
2012/12/27 Javascript
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
js使用html()或text()方法获取设置p标签的显示的值
2014/08/01 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
javascript实现动态标签云
2015/10/16 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
jQuery 实现双击编辑表格功能
2017/06/19 jQuery
JS简单实现父子窗口传值功能示例【未使用iframe框架】
2017/09/20 Javascript
react-router browserHistory刷新页面404问题解决方法
2017/12/29 Javascript
微信小程序新手教程之页面打开数量限制
2019/03/03 Javascript
react组件基本用法示例小结
2020/04/27 Javascript
js实现翻牌小游戏
2020/07/31 Javascript
Vue实现计算器计算效果
2020/08/17 Javascript
[01:18:43]2014 DOTA2华西杯精英邀请赛5 24 iG VS DK
2014/05/25 DOTA
Python中的魔法方法深入理解
2014/07/09 Python
介绍Python中的文档测试模块
2015/04/28 Python
深入理解Python中命名空间的查找规则LEGB
2015/08/06 Python
Python 查找字符在字符串中的位置实例
2018/05/02 Python
解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题
2019/01/15 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
Python使用itcaht库实现微信自动收发消息功能
2020/07/13 Python
利用CSS3实现文字折纸效果实例代码
2018/07/10 HTML / CSS
波兰最大的儿童服装连锁店之一:5.10.15.
2018/02/11 全球购物
自学考试自我鉴定范文
2013/09/26 职场文书
女大学生毕业找工作的自我评价
2013/10/03 职场文书
金属材料工程个人求职的自我评价
2013/12/04 职场文书
在职员工证明书
2014/09/19 职场文书
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
Javascript使用integrity属性进行安全验证
2021/11/07 Javascript
Python Matplotlib库实现画局部图
2021/11/17 Python