詳解HTTP請求:get方法和post方法的區別

在討論get方法和post方法的區別時,我們經常會提到兩點: 
1、get傳送的數據量較小,不能大於2KB,而post傳送的數據量較大,一般被默認爲不受限制; 
2、get安全性非常低,但是post安全性較高; 
究其根本,爲什麼呢?就需要提到http報文以及http報文的格式。 
首先我們先看一下HTTP請求報文的通用格式:


在《計算機網絡——自頂向下方法》一書中提到很關鍵的兩句話: 
使用get方法時實體主體爲空,而使用post方法時才使用。 
HTML表單經常使用GET方法,將輸入數據(在表單字段)傳送到正確的URL; 
這句話結合上面那個HTTP請求報文的通用格式就可以解釋爲什麼“get傳送的數據量較小,不能大於2KB,而post傳送的數據量較大,一般被默認爲不受限制”; 
至於安全性的問題,是因爲get方法將數據直接附在URL的後面,自然安全係數低,而post方法將數據封裝在報文實體中,而報文的傳遞會有加密等方法來保證其安全性,所以其安全性自然很高。

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