浅谈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 相关文章推荐
PHP SQLite类
May 07 PHP
php Rename 更改文件、文件夹名称
May 24 PHP
使用php计算排列组合的方法
Nov 13 PHP
PHP之APC缓存详细介绍 apc模块安装
Jan 13 PHP
php合并数组中相同元素的方法
Nov 13 PHP
ThinkPHP打开验证码页面显示乱码的解决方法
Dec 18 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 PHP
ajax+php实现无刷新验证手机号的实例
Dec 22 PHP
PHP使用反向Ajax技术实现在线客服系统详解
Jul 01 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
Oct 22 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
玛琪朵 Macchiato
2021/03/03 咖啡文化
php判断类是否存在函数class_exists用法分析
2014/11/14 PHP
Yii2增加验证码步骤详解
2016/04/25 PHP
js实现DIV的一些简单控制
2007/06/04 Javascript
javascript 处理事件绑定的一些兼容写法
2009/12/24 Javascript
jquery Mobile入门—外部链接切换示例代码
2013/01/08 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
js时间戳格式化成日期格式的多种方法
2013/11/11 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
jquery 实现两级导航菜单附效果图
2014/03/07 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
Javascript中的高阶函数介绍
2015/03/15 Javascript
百度地图api如何使用
2015/08/03 Javascript
jQuery AjaxUpload 上传图片代码
2016/02/02 Javascript
BootStrap文件上传样式超好看【持续更新】
2016/05/10 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
2016/11/29 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
vue实现学生信息管理系统
2020/05/30 Javascript
python 实现文件的递归拷贝实现代码
2012/08/02 Python
用yum安装MySQLdb模块的步骤方法
2016/12/15 Python
python中找出numpy array数组的最值及其索引方法
2018/04/17 Python
Python实现朴素贝叶斯分类器的方法详解
2018/07/04 Python
python数据批量写入ScrolledText的优化方法
2018/10/11 Python
python urllib爬虫模块使用解析
2019/09/05 Python
python 利用jinja2模板生成html代码实例
2019/10/10 Python
Python2与Python3的区别点整理
2019/12/12 Python
Python selenium的基本使用方法分析
2019/12/21 Python
Html5嵌入钉钉的实现示例
2020/06/04 HTML / CSS
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
可持续未来的时尚基础:Alternative Apparel
2019/05/06 全球购物
公司JAVA开发面试题
2015/04/02 面试题
暑期工社会实践报告
2015/07/13 职场文书
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js
JS class语法糖的深入剖析
2022/07/07 Javascript