HTTP提交方式之PUT詳細介紹及POST和PUT的區別

這篇文章主要介紹了HTTP提交方式之PUT詳細介紹及POST和PUT的區別,本文簡潔易懂,需要的朋友可以參考下

Http定義了與 服務器的交互方法,其中除了一般我們用的最多的GET,POST 其實還有PUT和DELETE
 
根據RFC2616標準(現行的HTTP/1.1)其實還有OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,CONNECT
 
簡單地結束一下吧。
 
1、PUT: 把消息本體中的消息發送到一個URL,跟POST類似,但不常用。
 
簡單地說:通常用於向服務器發送請求,如果URI不存在,則要求服務器根據請求創建資源,如果存在,服務器就接受請求內容,並修改URI資源的原始版本。
 
-----PUT請求那些封裝在Request-URI的實體。如果Request-URI引用一個已存在的資源,則該封裝實體應該作爲原始服務器上的修改版本。如果Request-URI不是指向一個已存在的資源,並且該URI可被請求的用戶代碼定義爲新資源,則原始服務器可用此URI創建新的資源。如果新的資源被創建,這個原始服務器就必須通過201(Created)響應通知用戶代理。如果已有資源被修改,則發送200或者204響應,表示成功完成了該請求。如果Request-URI既沒有創建也沒有修改資源,則應給予適當的錯誤響應來反映問題本質。實體的接受者不能忽略任何不理解或沒有實現的Content-*(如Content-Range)頭部,並且必須返回501響應。
 
如果請求經過緩存,並且Request-URI標識出一個或多個當前緩存的實體,則那些實體視爲過期了。該方法的響應不會被緩存。
 
2、POST和PUT的請求根本區別
 
POST請求的URI表示處理該封閉實體的資源,該資源可能是個數據接收過程、某種協議的網關、或者接收註解的獨立實體。然而,PUT請求中的URI表示請求中封閉的實體-用戶代理知道URI的目標,並且服務器無法將請求應用到其他資源。如果服務器希望該請求應用到另一個URI,就必須發送一個301響應;用戶代理可通過自己的判斷來決定是否轉發該請求。
 
HTTP/1.1沒有定義一個PUT請求如何影響原始服務器的狀態。
PUT請求必須遵守信息傳輸要求。
除非另有說明,PUT請求中的實體頭部應該用於PUT創建或修改的資源上。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章