浅谈Laravel POST,PUT,PATCH 路由的区别


Posted in PHP onOctober 15, 2019

经常会混淆HTTP的POST/PUT方法,因为这两个方法似乎都可以用来创建或更新一个资源。

区别是细微但清楚的:

POST方法用来创建一个子资源,如 /api/users,会在users下面创建一个user,如users/1

POST方法不是幂等的,多次执行,将导致多条相同的用户被创建(users/1,users/2 …而这些用户除了自增长id外有着相同的数据,除非你的系统实现了额外的数据唯一性检查)

而PUT方法用来创建一个URI已知的资源,或对已知资源进行完全替换,比如users/1,

因此PUT方法一般会用来更新一个已知资源,除非在创建前,你完全知道自己要创建的对象的URI。

PATCH方法是新引入的,是对PUT方法的补充,用来对已知资源进行局部更新

GET 获取资源

POST 创建资源

PUT 编辑/更新资源(需提交完整的资源字段)

PATCH 编辑/更新资源(可以提交需要更新的字段)

DELETE 删除资源

OPTIONS 服务器允许哪些请求谓词

这些就是最近比较流行的RestFul模式常用的,另HTML表单只支持POST、GET两种请求方式,PUT、PATCH以及DELETE是Laravel中伪造的HTTP请求方式,需要在表单中添加才能生效,还要配置路由。

以上这篇浅谈Laravel POST,PUT,PATCH 路由的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
风格模板初级不完全修改教程
Oct 09 PHP
PHP+MySQL5.0中文乱码解决方法
Nov 20 PHP
PHP 实例化类的一点摘记
Mar 23 PHP
PHP 一个随机字符串生成代码
May 26 PHP
关于尾递归的使用详解
May 02 PHP
php实现的CSS更新类实例
Sep 22 PHP
thinkphp文件处理类Dir.class.php的用法分析
Dec 08 PHP
php中switch与ifelse的效率区别及适用情况分析
Feb 12 PHP
PHP设置Cookie的HTTPONLY属性方法
Feb 09 PHP
php redis实现对200w用户的即时推送
Mar 04 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
Nov 24 PHP
Yii redis集合的基本使用教程
Jun 14 PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
Oct 15 #PHP
Laravel 不同生产环境服务器的判断实践
Oct 15 #PHP
laravel自定义分页的实现案例offset()和limit()
Oct 15 #PHP
Laravel6.0.4中将添加计划任务事件的方法步骤
Oct 15 #PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
Oct 15 #PHP
Laravel实现搜索的时候分页并携带参数
Oct 15 #PHP
在Laravel中实现使用AJAX动态刷新部分页面
Oct 15 #PHP
You might like
关于crontab的使用详解
2013/06/24 PHP
遭遇php的in_array低性能问题
2013/09/17 PHP
浅析Yii2 GridView实现下拉搜索教程
2016/04/22 PHP
PHP巧妙利用位运算实现网站权限管理的方法
2017/03/12 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
PDO::commit讲解
2019/01/27 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
2019/09/08 PHP
理解Javascript_02_理解undefined和null
2010/10/11 Javascript
JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)
2013/12/17 Javascript
javascript实现简单的Map示例介绍
2013/12/23 Javascript
对JavaScript客户端应用编程的一些建议
2015/06/24 Javascript
JS实现选定指定HTML元素对象中指定文本内容功能示例
2017/02/13 Javascript
Swiper实现轮播图效果
2017/07/03 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
使用puppeteer破解极验的滑动验证码
2018/02/24 Javascript
Vue+ElementUI实现表单动态渲染、可视化配置的方法
2018/03/07 Javascript
JS实现的base64加密解密操作示例
2018/04/18 Javascript
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
Python列表生成器的循环技巧分享
2015/03/06 Python
Python实现七彩蟒蛇绘制实例代码
2018/01/16 Python
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
python使用递归的方式建立二叉树
2019/07/03 Python
一行Python代码过滤标点符号等特殊字符
2019/08/12 Python
python实现测试工具(一)——命令行发送get请求
2020/10/19 Python
原生 JS+CSS+HTML 实现时序图的方法
2019/07/31 HTML / CSS
日本钓鱼渔具和户外用品网上商店:naturum
2016/08/07 全球购物
英国Radley包德国官网:Radley London德国
2019/11/18 全球购物
数控技术专业毕业自荐书范文
2014/02/05 职场文书
工商企业管理应届生求职信
2014/05/04 职场文书
2014年国庆节演讲稿
2014/09/19 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
入党转正申请报告
2015/05/15 职场文书
mysql5.5中文乱码问题解决的有用方法
2022/05/30 MySQL