HTTP(超文本傳輸協(xié)議)的六種請求方法介紹
超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)是一個簡單的請求-響應協(xié)議,它通常運行在TCP之上。它指定了客戶端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應。

標準Http協(xié)議支持六種請求方法,即:
1、GET
2、POST
3、PUT
4、Delete
5、HEAD
6、Options
但其實我們大部分情況下只用到了GET和POST。如果想設(shè)計一個符合RESTful規(guī)范的web應用程序,則這六種方法都會用到。不過即使暫時不想涉及REST,了解這六種方法的本質(zhì)仍然是很有作用的。大家將會發(fā)現(xiàn),原來web也是很簡潔明了的。下面依次說明這六種方法。
1,GET:GET可以說是最常見的了,它本質(zhì)就是發(fā)送一個請求來取得服務(wù)器上的某一資源。資源通過一組HTTP頭和呈現(xiàn)據(jù)(如HTML文本,或者圖片或者視頻等)返回給客戶端。GET請求中,永遠不會包含呈現(xiàn)數(shù)據(jù)。
2,HEAD:HEAD和GET本質(zhì)是一樣的,區(qū)別在于HEAD不含有呈現(xiàn)數(shù)據(jù),而僅僅是HTTP頭信息。有的人可能覺得這個方法沒什么用,其實不是這樣的。想象一個業(yè)務(wù)情景:欲判斷某個資源是否存在,我們通常使用GET,但這里用HEAD則意義更加明確。
3,PUT:這個方法比較少見。HTML表單也不支持這個。本質(zhì)上來講, PUT和POST極為相似,都是向服務(wù)器發(fā)送數(shù)據(jù),但它們之間有一個重要區(qū)別,PUT通常指定了資源的存放位置,而POST則沒有,POST的數(shù)據(jù)存放位置由服務(wù)器自己決定。
舉個例子:如一個用于提交博文的URL,/addBlog。如果用PUT,則提交的URL會是像這樣的”/addBlog/abc123”,其中abc123就是這個博文的地址。而如果用POST,則這個地址會在提交后由服務(wù)器告知客戶端。目前大部分博客都是這樣的。顯然,PUT和POST用途是不一樣的。具體用哪個還取決于當前的業(yè)務(wù)場景。
4,DELETE:刪除某一個資源?;旧线@個也很少見,不過還是有一些地方比如amazon的S3云服務(wù)里面就用的這個方法來刪除資源。
5,POST:向服務(wù)器提交數(shù)據(jù)。這個方法用途廣泛,幾乎目前所有的提交操作都是靠這個完成。
6,OPTIONS:這個方法很有趣,但極少使用。它用于獲取當前URL所支持的方法。若請求成功,則它會在HTTP頭中包含一個名為“Allow”的頭,值是所支持的方法,如“GET, POST”。
其實還有一個 TRACE方法,不過這個基本上不會用到,這里就不介紹了。
以上的六種方法,我們可以跟數(shù)據(jù)庫的CRUD增刪改查操作對應起來: CREATE :PUT READ:GET UPDATE:POST DELETE:DELETE 這樣一來就實現(xiàn)了HTTP和數(shù)據(jù)庫操作(其實不光是數(shù)據(jù)庫,任何數(shù)據(jù)如文件圖表都是這樣)的完美統(tǒng)一,這也是REST的精髓之一。

本文鏈接:http://jmtianhui.com/news/details-12-711.html
版權(quán)聲明:
1:本站所有內(nèi)容均由互聯(lián)網(wǎng)收集整理、上傳,并且以計算機技術(shù)研究交流為目的,僅供大家參考、學習,不存在任何商業(yè)目的與商業(yè)用途,如描述有誤或者學術(shù)不對之處歡迎及時提出,不甚感謝。
2、 如涉及版權(quán)問題,請聯(lián)系我們4724325@qq.com第一時間處理;
我們從以下三個方面,對比純靜態(tài)和偽靜態(tài)兩種靜態(tài)頁面生成方式,逐一展開分析。
用JS的正則表達式如何判斷輸入框內(nèi)為中文或者是英文數(shù)字,或者是三者混編
css制作扇形
純CSS3文字Loading動畫特效
PhpStorm 2022.1 EAP 3 在 PHPDoc 和屬性中添加了對多行和嵌套數(shù)組形狀的完全支持:在這種情況下,可以使用數(shù)組形狀注釋定義數(shù)組結(jié)構(gòu),以獲得鍵的代碼補全并推斷值的類型。
PHP作為Web界第一大語言近年來熱度不夠,但是這幾年的進步和成長卻沒有中斷。在2022伊始,我們來一起學習一下目前PHP的現(xiàn)狀以及最新版本帶來的特性。
Linux程序前臺后臺切換:在Linux終端運行命令的時候,在命令末尾加上 & 符號,就可以讓程序在后臺運行Ubuntu$">root@Ubuntu$ ./tcpserv01 &
Python 的正則表達式支持 多行模式,將每行文字分別匹配。然而各種操作系統(tǒng)里,換行符的表示法各不相同,會導致 Python 不能正確使用多行模式。