HTTP請求中POST和GET的區別

2021-10-22 04:01:26 字數 1121 閱讀 6522

一般我們在瀏覽器輸入乙個**訪問**都是get請求;再form表單中,可以通過設定method指定提交方式為get或者post提交方式,預設為get提交方式。

http定義了與伺服器互動的不同方法,其中最基本的四種:get,post,put,delete,head,其中gethead被稱為安全方法,因為使用get和head的http請求不會產生什麼動作。不會產生動作意味著get和head的http請求不會在伺服器上產生任何結果。但是安全方法並不是什麼動作都不產生,這裡的安全方法僅僅指不會修改資訊。

方法get

post

get在瀏覽器回退時是無害的

post會再次提交請求

get產生的url位址可以被bookmark

post不可以。

get請求會被瀏覽器主動cache

post不會,除非手動設定。

get請求只能進行url編碼,而post支援多種編碼方式。

get請求引數會被完整保留在瀏覽器歷史記錄裡

post中的引數不會被保留。

get請求在url中傳送的引數是有長度限制的

post麼有。

對引數的資料型別,get只接受ascii字元

而post沒有限制。

get比post更不安全,因為引數直接暴露在url上,所以不能用來傳遞敏感資訊。

get引數通過url傳

post放在request body中。

get和post還有乙個重大區別:

簡單的說:get產生乙個tcp資料報;post產生兩個tcp資料報。

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

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

也就是說,get只需要汽車跑一趟就把貨送到了,而post得跑兩趟,第一趟,先去和伺服器打個招呼「嗨,我等下要送一批貨來,你們開啟門迎接我」,然後再回頭把貨送過去。

Http中get和post請求

http定義了與伺服器互動的不同方法,最基本的方法有4種,分別是get,post,put,delete。url全稱是資源描述符,我們可以這樣認為 乙個url位址,它用於描述乙個網路上的資源,而http中的get,post,put,delete就對應著對這個資源的查,改,增,刪4個操作。到這裡,大家應...

HTTP中GET和POST請求區別

1 get是從伺服器上 獲取資料,post是向伺服器傳送資料。1 在客戶端,get方式在通過 url提交資料,資料 在url中 可以看到 post方式,資料放置在 html header內 提交。2 對於get方式,伺服器端用request.querystring獲取變數的值,對於post方式,伺服...

HTTP請求中get和post區別

1 get請求,請求的資料會附加在url之後,以?分割url和傳輸資料,多個引數用 連線。url的編碼格式採用的是ascii編碼,而不是uniclde,即是說所有的非ascii字元都要編碼之後再傳輸。2 get提交有資料大小的限制,一般是不超過1024個位元組,而這種說法也不完全準確,http協議並...