簡述六種請求方法,get、head、put、delete、post、options區別

Sliing·發表於2020-11-09

簡述六種請求方法,get、head、put、delete、post、options區別

Get

get請求是用來獲取資料的,只是用來查詢資料,不對伺服器的資料做任何的修改,新增,刪除等操作。

在這裡我們認為get請求是安全的,以及冪等的。安全就是指不影響伺服器的資料,冪等是指同一個請求傳送多次返回的結果應該相同。資源通過一組HTTP頭和呈現據(如HTML文字,或者圖片或者視訊等)返回給客戶端。GET請求中,永遠不會包含呈現資料

特點:

get請求會把請求的引數附加在URL後面,這樣會產生安全問題,如果是系統的登陸介面採用的get請求,需要對請求的引數做一個加密。

get請求其實本身HTTP協議並沒有限制它的URL大小,但是不同的瀏覽器對其有不同的大小長度限制

HEAD

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

POST

post請求一般是對伺服器的資料做改變,常用來資料的提交,新增操作。

特點:

post請求的請求引數都是請求體中

post請求本身HTTP協議也是沒有限制大小的,限制它的是伺服器的處理能力

PUT

這個方法比較少見。HTML表單也不支援這個。
本質上來講, PUT和POST極為相似,都是向伺服器傳送資料,但它們之間有一個重要區別,PUT通常指定了資源的存放位置,而POST則沒有,POST的資料存放位置由伺服器自己決定。且put的側重點在於對於資料的修改操作,但是post側重於對於資料的增加

DELETE

delete請求用來刪除伺服器的資源

OPTIONS

options請求屬於瀏覽器的預檢請求,檢視伺服器是否接受請求,預檢通過後,瀏覽器才會去發get,post,put,delete等請求。至於什麼情況下瀏覽器會發預檢請求,瀏覽器會會將請求分為兩類,簡單請求與非簡單請求,非簡單請求會產生預檢options請求:它用於獲取當前URL所支援的方法。若請求成功,則它會在HTTP頭中包含一個名為“Allow”的頭,值是所支援的方法,如“GET, POST”。

注意

這些不同方式的請求形式,只是一種規範定義而已,例如你可以用POST請求來執行所有請求,功能上沒問題,但是不符合規範!開發還是要遵守規範的。

相關文章