POST和GET請求的區別

2021-08-21 02:47:16 字數 1226 閱讀 7589

兩種請求方式的區別:

1、get請求,請求的資料會附加在url之後,以?分割url和傳輸資料,多個引數用&連線。url的編碼格式採用的是ascii編碼,而不是uniclde,即是說所有的非ascii字元都要編碼之後再傳輸。

post請求:post請求會把請求的資料放置在http請求包的包體中。上面的item=bandsaw就是實際的傳輸資料。

因此,get請求的資料會暴露在位址列中,而post請求則不會。

2、傳輸資料的大小

在http規範中,沒有對url的長度和傳輸的資料大小進行限制。但是在實際開發過程中,對於get,特定的瀏覽器和伺服器對url的長度有限制。因此,在使用get請求時,傳輸資料會受到url長度的限制。

對於post,由於不是url傳值,理論上是不會受限制的,但是實際上各個伺服器會規定對post提交資料大小進行限制,apache、iis都有各自的配置。

3、安全性

post的安全性比get的高。這裡的安全是指真正的安全,而不同於上面get提到的安全方法中的安全,上面提到的安全僅僅是不修改伺服器的資料。比如,在進行登入操作,通過get請求,使用者名稱和密碼都會暴露再url上,因為登入頁面有可能被瀏覽器快取以及其他人檢視瀏覽器的歷史記錄的原因,此時的使用者名稱和密碼就很容易被他人拿到了。除此之外,get請求提交的資料還可能會造成cross-site request frogery攻擊

4、http中的get,post,soap協議都是在http上執行的

三、http響應

http響應報文的格式

status,狀態碼描述了請求過程中發生的情況

reson-phrase 是數字狀態碼的可讀版本

常見的狀態碼以及含義如下:

200 ok 伺服器成功處理請求

301/302 moved permanently(重定向)請求的url已移走。響應報文中應該包含乙個location url,說明資源現在所處的位置

304 not modified(未修改) 客戶的快取資源是最新的,要客戶端使用快取內容

404 not found 未找到資源

501 internal server error 伺服器遇到錯誤,使其無法對請求提供服務

http響應示例

Get和Post請求區別

get和post是什麼?http協議中的兩種傳送請求的方法。http是什麼?http是基於tcp ip的關於資料如何在全球資訊網中如何通訊的協議。http的底層是tcp ip。所以get和post的底層也是tcp ip,也就是說,get post都是tcp鏈結。get和post能做的事情是一樣一樣的...

GET 和 POST 請求區別

1 get是從伺服器上獲取資料。2 post是向伺服器傳送資料。1 get是把引數資料佇列加到提交表單的action屬性所指的url中,值和表單內各個字段一一對應,在url中可以看到。2 post是通過http post機制,將表單內各個字段與其內容放置在html header內一起傳送到actio...

get和post請求區別

get和post請求區別 1 get產生乙個tcp資料報 post產生兩個tcp資料報。對於get方式的請求,瀏覽器會把http header和data一併傳送出去,伺服器響應200 返回資料 而對於post,瀏覽器先傳送header,伺服器響應100 continue,瀏覽器再傳送data,伺服器...