http 請求的7 種方法

2021-08-21 10:30:02 字數 2737 閱讀 5158

http 請求的7 種方法

1.get

2.post

3.put

4.delete

5.head

6.trace

7.opinions

head 請求和 get請求類似,但是伺服器只響應首部,不會返回主體部分。

1. 看資源是否存在

2. 看首部,context-length是否被修改了。

//get請求報文

:*//get 響應報文

;// head請求報文

:*//head 響應報文

;put

和get 相反,會向伺服器寫入文件,伺服器用請求主體部分創造乙個新的文件,url就是put 請求的url; 如果資源已經存在,則更新資源

// put 請求報文

// put響應報文

get / post 有哪些區別?

get和post本質上就是tcp鏈結,本質上都一樣。

get後退按鈕/重新整理

無害資料會被重新提交(瀏覽器應該告知使用者資料會被重新提交)。

書籤可收藏為書籤

不可收藏為書籤

快取能被快取

不能快取

編碼型別

歷史引數保留在瀏覽器歷史中。

引數不會儲存在瀏覽器歷史中。

對資料長度的限制

是的。大概是2kb, 會出現截斷的情況

無限制。

對資料型別的限制

只允許 ascii 字元。

沒有限制。也允許二進位制資料。

安全性與 post 相比,get 的安全性較差,因為所傳送的資料是 url 的一部分。

在傳送密碼或其他敏感資訊時絕不要使用 get !

post 比 get 更安全,因為引數不會被儲存在瀏覽器歷史或 web 伺服器日誌中。

可見性資料在 url 中對所有人都是可見的。

資料不會顯示在 url 中。

(安全後退書籤快取編碼歷史兩個限制)

get和post的底層也是tcp/ip,也就是說,get/post都是tcp鏈結。get和post能做的事情是一樣一樣的。你要給get加上request body,給post帶上url引數,技術上是完全行的通的。如果你用get服務,在request body偷偷藏了資料,不同伺服器的處理方式也是不同的,有些伺服器直接忽略

get和post還有乙個重大區別,簡單的說:

get產生乙個tcp資料報;post產生兩個tcp資料報。

長的說:

對於get方式的請求,瀏覽器會把http header和data一併傳送出去,伺服器響應200(返回資料);

而對於post,瀏覽器先傳送header,伺服器響應100 continue,瀏覽器再傳送data,伺服器響應200 ok(返回資料)。

trace

『兒子你都變成啥樣了』

客戶端發起的請求要經過防火牆,**等程式,任何乙個程式都有可能修改請求。

trace 請求,伺服器會把它收到的原始請求報文**回去;

opinions

『你能幹啥』

請求伺服器告知其功能,可以問伺服器支援哪些方法,可以對某些特定的資源支援哪些方法

delete

請求刪除某一資源,不能保證一定會刪除

內容更新於: 2018-04-11 12:21:09 

http請求的幾種方法

1.get 傳送請求來獲得伺服器上的資源,請求體中不會包含請求資料,請求資料放在協議頭中。另外get支援快取 快取 可保留書籤等。冪等 2.post 和get一樣很常見,向伺服器提交資源讓伺服器處理,比如提交表單 上傳檔案等,可能導致建立新的資源或者對原有資源的修改。提交的資源放在請求體中。不支援快...

HTTP的八種方法

方法 servlet方法 目的get doget 從指定的url中獲取資源 head dohead 與get一致,唯一的區別在於該請求只返回頁面的頭部資料 post dopost 通常用於處理web表單提交 putdoput 儲存url中提供的實體 delete dodelete 刪除url標識的資...

Http的八種請求方法

1.get get方法請求指定的頁面資訊,返回實體主體。該請求是向伺服器請求資訊,請求引數會跟在url後面,因此,對傳參長度有限制的,而且不同瀏覽器的上限是不同的 2k,7 8k及其他 由於get請求直接將引數暴露在url中,因此對於一些帶有重要資訊的請求可能並不完全合適。2.post post請求...