我对“POST和GET的区别”的理解
生活随笔
收集整理的這篇文章主要介紹了
我对“POST和GET的区别”的理解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
之前從書本上得到的結論是GET方式傳輸時,參數會顯示在url上,諸如http://www.mm.com/test.asp?name=ddd&password=ppp
GET書簽可收藏,POST為書簽不可收藏。
GET能被緩存,POST不能緩存 。
GET編碼類型application/x-www-form-url,POST編碼類型encodedapplication/x-www-form-urlencoded 或 multipart/form-data。為二進制數據使用多重編碼。
GET歷史參數保留在瀏覽器歷史中。POST參數不會保存在瀏覽器歷史中。
GET對數據長度有限制,當發送數據時,GET 方法向 URL 添加數據;URL 的長度是受限制的(URL 的最大長度是 2048 個字符)。POST無限制。
GET只允許 ASCII 字符。POST沒有限制。也允許二進制數據。
與 POST 相比,GET 的安全性較差,因為所發送的數據是 URL 的一部分。在發送密碼或其他敏感信息時絕不要使用 GET !POST 比 GET 更安全,因為參數不會被保存在瀏覽器歷史或 web 服務器日志中。
GET的數據在 URL 中對所有人都是可見的。POST的數據不會顯示在 URL 中。
GET和POST本質上就是TCP鏈接,并無差別。但是由于HTTP的規定和瀏覽器/服務器的限制,導致他們在應用過程中體現出一些不同。 GET和POST還有一個重大區別,簡單的說:GET產生一個TCP數據包;POST產生兩個TCP數據包。
對于GET方式的請求,瀏覽器會把http header和data一并發送出去,服務器響應200(返回數據); 而對于POST,瀏覽器先發送header,服務器響應100 continue,瀏覽器再發送data,服務器響應200 ok(返回數據)。
而POST方式通過HTTP post機制,將表單內字段名稱和內容放置在HTML表頭內傳送給服務端。
當然結果就是GET不安全,數據會暴露在url。
然后從w3schools上看到相關信息:
GET后退按鈕/刷新無害,POST數據會被重新提交(瀏覽器應該告知用戶數據會被重新提交)。GET書簽可收藏,POST為書簽不可收藏。
GET能被緩存,POST不能緩存 。
GET編碼類型application/x-www-form-url,POST編碼類型encodedapplication/x-www-form-urlencoded 或 multipart/form-data。為二進制數據使用多重編碼。
GET歷史參數保留在瀏覽器歷史中。POST參數不會保存在瀏覽器歷史中。
GET對數據長度有限制,當發送數據時,GET 方法向 URL 添加數據;URL 的長度是受限制的(URL 的最大長度是 2048 個字符)。POST無限制。
GET只允許 ASCII 字符。POST沒有限制。也允許二進制數據。
與 POST 相比,GET 的安全性較差,因為所發送的數據是 URL 的一部分。在發送密碼或其他敏感信息時絕不要使用 GET !POST 比 GET 更安全,因為參數不會被保存在瀏覽器歷史或 web 服務器日志中。
GET的數據在 URL 中對所有人都是可見的。POST的數據不會顯示在 URL 中。
GET和POST本質上就是TCP鏈接,并無差別。但是由于HTTP的規定和瀏覽器/服務器的限制,導致他們在應用過程中體現出一些不同。 GET和POST還有一個重大區別,簡單的說:GET產生一個TCP數據包;POST產生兩個TCP數據包。
對于GET方式的請求,瀏覽器會把http header和data一并發送出去,服務器響應200(返回數據); 而對于POST,瀏覽器先發送header,服務器響應100 continue,瀏覽器再發送data,服務器響應200 ok(返回數據)。
總結
以上是生活随笔為你收集整理的我对“POST和GET的区别”的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows10安全系统更新失败怎么办
- 下一篇: 【转载】Could not create