面試必備 GET和POST的用法和區別

2021-09-29 23:25:08 字數 589 閱讀 4934

注意,並不是說標準答案有誤,上述區別在大部分瀏覽器上是存在的,因為這些瀏覽器實現了 http 標準。

網路上都會提到瀏覽器位址列輸入的引數是有限的。

首先說明一點,http 協議沒有 body 和 url 的長度限制,對 url 限制的大多是瀏覽器和伺服器的原因。

瀏覽器原因就不說了,伺服器是因為處理長 url 要消耗比較多的資源,為了效能和安全(防止惡意構造長 url 來攻擊)考慮,會給 url 長度加限制。

有人說post 比 get 安全,因為資料在位址列上不可見。

然而,從傳輸的角度來說,他們都是不安全的,因為 http 在網路上是明文傳輸的,只要在網路節點上捉包,就能完整地獲取資料報文。

要想安全傳輸,就只有加密,也就是 https。

有些文章中提到,post 會將 header 和 body 分開傳送,先傳送 header,服務端返回 100 狀態碼再傳送 body。

http 協議中沒有明確說明 post 會產生兩個 tcp 資料報,而且實際測試(chrome)發現,header 和 body 不會分開傳送。

所以,header 和 body 分開傳送是部分瀏覽器或框架的請求方法,不屬於 post 必然行為。

get和post請求的區別面試 必備

get請求在url中傳送的引數是有長度限制的,而post沒有。get比post更不安全,因為引數直接暴露在url上,所以不能用來傳遞敏感資訊。get引數通過url傳遞,post放在request body中。get請求引數會被完整保留在瀏覽器歷史記錄裡,而post中的引數不會被保留。get請求只能進...

GET和POST區別和用法

get和post兩種方法都是將資料送到伺服器,但你該用哪一種呢?http標準包含這兩種方法是為了達到不同的目的。post用於建立資源,資源的內容會被編入http請示的內容中。例如,處理訂貨表單 在資料庫中加入新資料行等。當請求無 時 如進行搜尋 便可使用get方法 當請求有 時 如在資料庫新增資料行...

GET和POST區別和用法

1 get是用來從伺服器上獲得資料,而post是用來向伺服器上傳遞資料。2 get將表單中資料的按照variable value的形式,新增到action所指向的url後面,並且兩者使用 連線,而各個變數之間使用 連線 post是將表單中的資料放在form的資料體中,按照變數和值相對應的方式,傳遞到...