有關HTTP的PATCH提交方式

韓淼燃發表於2020-09-28

在使用postman請求介面得時候,使用get,post得時候我們是使用body下form-data來傳輸資料得,但是使用patch時候就不是了,預設是以x-www-form-urlencoded的contentType來傳送資訊,並且資訊內容是放在request的body裡。

PUT方法和PATCH方法的提交目的地都是直接指向資源,而POST方法提交的資料的目的地是一個行為處理器。

PUT方法用來替換資源,而patch方法用來更新部分資源,然而PATCH和POST都是非冪等的,POST請求伺服器執行一個動作,多次請求會多次執行。PATCH提供的實體則需要根據程式或其它協議的定義,解析後在伺服器上執行,以此來修改伺服器上的資料。也就是說,PATCH請求是會執行某個程式的,如果重複提交,程式可能執行多次,對伺服器上的資源就可能造成額外的影響POST方法和PATCH方法它們的實體部分都是結構化的資料,所以PAtch也是非冪等的。POST方法的實體結構一般是 multipart/form-data或 application/x-www-form-urlencoded而PATCH方法的實體結構則隨其它規範定義。這和PUT方法的無結構實體相比就是最大的區別。

相關文章