日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HTTP协议中POST、GET、HEAD、PUT等请求方法及相应值得含义

發布時間:2023/12/18 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTTP协议中POST、GET、HEAD、PUT等请求方法及相应值得含义 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

請求方法是請求一定的Web頁面的程序或用于特定的URL。可選用下列幾種:

GET: 請求指定的頁面信息,并返回實體主體。

HEAD: 只請求頁面的首部。

POST: 請求服務器接受所指定的文檔作為對所標識的URI的新的從屬實體。

PUT: 從客戶端向服務器傳送的數據取代指定的文檔的內容。

DELETE: 請求服務器刪除指定的頁面。

OPTIONS: 允許客戶端查看服務器的性能。

TRACE: 請求服務器在響應中的實體主體部分返回所得到的內容。

PATCH: 實體中包含一個表,表中說明與該URI所表示的原內容的區別。

MOVE: 請求服務器將指定的頁面移至另一個網絡地址。

COPY: 請求服務器將指定的頁面拷貝至另一個網絡地址。

LINK: 請求服務器建立鏈接關系。

UNLINK: 斷開鏈接關系。

WRAPPED: 允許客戶端發送經過封裝的請求。

Extension-mothed:在不改動協議的前提下,可增加另外的方法。

當服務器響應時,其狀態行的信息為HTTP的版本號,狀態碼,及解釋狀態碼的簡單說明。現將5類狀態碼詳細列出:

① 客戶方錯誤?
100 繼續?
101 交換協議

② 成功?
200 OK?
201 已創建?
202 接收?
203 非認證信息?
204 無內容?
205 重置內容?
206 部分內容

③ 重定向?
300 多路選擇?
301 永久轉移?
302 暫時轉移?
303 參見其它?
304 未修改(Not Modified)?
305 使用代理

④ 客戶方錯誤?
400 錯誤請求(Bad Request)?
401 未認證?
402 需要付費?
403 禁止(Forbidden)?
404 未找到(Not Found)?
405 方法不允許?
406 不接受?
407 需要代理認證?
408 請求超時?
409 沖突?
410 失敗?
411 需要長度?
412 條件失敗?
413 請求實體太大?
414 請求URI太長?
415 不支持媒體類型

⑤ 服務器錯誤?
500 服務器內部錯誤?
501 未實現(Not Implemented)?
502 網關失敗?
504 網關超時?
505 HTTP版本不支持?
關于實體頭部的內容還可以有:?
Last Modified :請求文檔的最近修改時間。?
Expires :請求文檔的過期時間。?
Connect-length:文檔數據的長度。?
WWW-authenricate:通知客戶端需要的認證信息。?
Connect-encoding :說明有無使用壓縮技術。?
Transfer-encoding :說明采用的編碼變換類型。

標準Http協議支持六種請求方法,即:?
0,GET?
1,HEAD?
2,PUT?
3,DELETE?
4,POST?
5,OPTIONS

但其實我們大部分情況下只用到了GET和POST。如果想設計一個符合RESTful規范的web應用程序,則這六種方法都會用到。不過即使暫時不想涉及REST,了解這六種方法的本質仍然是很有作用的。大家將會發現,原來web也是很簡潔明了的。下面依次說明這六種方法。

0,GET:GET可以說是最常見的了,它本質就是發送一個請求來取得服務器上的某一資源。資源通過一組HTTP頭和呈現數據(如HTML文本,或者圖片或者視頻等)返回給客戶端。GET請求中,永遠不會包含呈現數據。

1,HEAD:HEAD和GET本質是一樣的,區別在于HEAD不含有呈現數據,而僅僅是HTTP頭信息。有的人可能覺得這個方法沒什么用,其實不是這樣的。想象一個業務情景:欲判斷某個資源是否存在,我們通常使用GET,但這里用HEAD則意義更加明確。

2,PUT:這個方法比較少見。HTML表單也不支持這個。本質上來講, PUT和POST極為相似,都是向服務器發送數據,但它們之間有一個重要區別,PUT通常指定了資源的存放位置,而POST則沒有,POST的數據存放位置由服務器自己決定。舉個例子:如一個用于提交博文的URL,/addBlog。如果用PUT,則提交的URL會是像這樣的”/addBlog/abc123”,其中abc123就是這個博文的地址。而如果用POST,則這個地址會在提交后由服務器告知客戶端。目前大部分博客都是這樣的。顯然,PUT和POST用途是不一樣的。具體用哪個還取決于當前的業務場景。

3,DELETE:刪除某一個資源。基本上這個也很少見,不過還是有一些地方比如amazon的S3云服務里面就用的這個方法來刪除資源。

4,POST:向服務器提交數據。這個方法用途廣泛,幾乎目前所有的提交操作都是靠這個完成。

5,OPTIONS:這個方法很有趣,但極少使用。它用于獲取當前URL所支持的方法。若請求成功,則它會在HTTP頭中包含一個名為“Allow”的頭,值是所支持的方法,如“GET, POST”。

其實還有一個TRACE方法,不過這個基本上不會用到,這里就不介紹了。以上的六種方法,我們可以跟數據庫的CRUD增刪改查操作對應起來:

CREATE :PUT

READ:GET

UPDATE:POST

DELETE:DELETE

這樣一來就實現了HTTP和數據庫操作(其實不光是數據庫,任何數據如文件圖表都是這樣)的完美統一,這也是REST的精髓之一。

?

?

見:http://blog.csdn.net/qq_26291823/article/details/51900422

總結

以上是生活随笔為你收集整理的HTTP协议中POST、GET、HEAD、PUT等请求方法及相应值得含义的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。