NetCore項目實戰篇03---HTTP Patch 更新數據

一、什么是HTPP Patch

HTTP1.0定義了三種請求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五種請求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
而patch其實就是對新增五種請求方式中的put的補充。用來對已知資源進行局部更新。
補充一下,PATCH 與 PUT 屬性上的一個重要區別還在于:PUT 是冪等的,而 PATCH 不是冪等的。
冪等是一個數學和計算機學概念,在計算機范疇內表示一個操作執行任意次對系統的影響跟一次是相同

二、打個比喻

假設我們有一個UserInfo,里面有userId, userName, userGender等10個字段??赡愕木庉嫻δ芤驗樾枨?,在某個特別的頁面里只能修改userName,這時候的更新怎么做?
人們通常(為徒省事)把一個包含了修改后userName的完整userInfo對象傳給后端,做完整更新。但仔細想想,這種做法感覺有點二,而且真心浪費帶寬(純技術上講,你不關心帶寬那是你土豪)。
于是patch誕生,只傳一個userName到指定資源去,表示該請求是一個局部更新,后端僅更新接收到的字段。
而put雖然也是更新資源,但要求前端提供的一定是一個完整的資源對象,理論上說,如果你用了put,但卻沒有提供完整的UserInfo,那么缺了的那些字段應該被清空。
 
三、使用方法
1、在之前開發的項目中用戶控制器中添加一個patch方法,用來更新用戶信息

 

 2、請求時如果只更新用戶公司名,請求格式如下:

 

 3、如要更新集合內用如下的方法

 

 4、請求更新集合的數據時value用數組就行,如下:

 

 

posted @ 2020-05-04 12:11  zhengwei_cq  閱讀(...)  評論(...編輯  收藏
全民捕鱼游戏怎么玩 网上买彩票的正规网站 通昭配资 贵州快三开奖结果查询1一 江西多乐彩11选5开奖结果 如何向客户介绍股票配资 排列三走势图下载安装 电视上的股评专家可靠吗最厉害股评专家 彩票棋牌app 天津乐选11选五玩法规则 26日湖北快3走势图