淺談Laravel POST,PUT,PATCH 路由的區(qū)別
經(jīng)常會(huì)混淆HTTP的POST/PUT方法,因?yàn)檫@兩個(gè)方法似乎都可以用來創(chuàng)建或更新一個(gè)資源。
區(qū)別是細(xì)微但清楚的:
POST方法用來創(chuàng)建一個(gè)子資源,如 /api/users,會(huì)在users下面創(chuàng)建一個(gè)user,如users/1
POST方法不是冪等的,多次執(zhí)行,將導(dǎo)致多條相同的用戶被創(chuàng)建(users/1,users/2 …而這些用戶除了自增長id外有著相同的數(shù)據(jù),除非你的系統(tǒng)實(shí)現(xiàn)了額外的數(shù)據(jù)唯一性檢查)
而PUT方法用來創(chuàng)建一個(gè)URI已知的資源,或?qū)σ阎Y源進(jìn)行完全替換,比如users/1,
因此PUT方法一般會(huì)用來更新一個(gè)已知資源,除非在創(chuàng)建前,你完全知道自己要?jiǎng)?chuàng)建的對象的URI。
PATCH方法是新引入的,是對PUT方法的補(bǔ)充,用來對已知資源進(jìn)行局部更新
GET 獲取資源
POST 創(chuàng)建資源
PUT 編輯/更新資源(需提交完整的資源字段)
PATCH 編輯/更新資源(可以提交需要更新的字段)
DELETE 刪除資源
OPTIONS 服務(wù)器允許哪些請求謂詞
這些就是最近比較流行的RestFul模式常用的,另HTML表單只支持POST、GET兩種請求方式,PUT、PATCH以及DELETE是Laravel中偽造的HTTP請求方式,需要在表單中添加才能生效,還要配置路由。
以上這篇淺談Laravel POST,PUT,PATCH 路由的區(qū)別就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Laravel 之url參數(shù),獲取路由參數(shù)的例子
今天小編就為大家分享一篇Laravel 之url參數(shù),獲取路由參數(shù)的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
ThinkPHP3.1新特性之對分組支持的改進(jìn)與完善概述
這篇文章主要介紹了ThinkPHP3.1對分組支持的改進(jìn),需要的朋友可以參考下2014-06-06
使用PHPUnit進(jìn)行單元測試并生成代碼覆蓋率報(bào)告的方法
這篇文章主要介紹了使用PHPUnit進(jìn)行單元測試并生成代碼覆蓋率報(bào)告的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-03-03
淺談php函數(shù)serialize()與unserialize()的使用方法
在php中serialize()與unserialize()函數(shù)是一對函數(shù),下面本文章就來為各位同學(xué)介紹serialize()與unserialize()函數(shù)的使用例子,希望能幫助到各位。2014-08-08
淺析ThinkPHP中execute和query方法的區(qū)別
初學(xué)ThinkPHP的時(shí)候,很多人都對execute()和query()方法的區(qū)別搞不懂,本文就此淺析二者的區(qū)別,需要的朋友可以參考下2014-06-06
php循環(huán)table實(shí)現(xiàn)一行兩列顯示的方法
這篇文章主要介紹了php循環(huán)table實(shí)現(xiàn)一行兩列顯示的方法,本文直接給出實(shí)現(xiàn)代碼,重點(diǎn)就是在取余方法的運(yùn)用,需要的朋友可以參考下2015-06-06

