get請求與post請求的區別【面試常客】

概念

get請求與post請求都是http協議請求頭中的的請求方法,它們的作用都是向服務器發送請求參數。

區別

  1. url可見性

get請求發送請求參數時,會將參數顯示在瀏覽器的url地址欄上,使用?來攜帶,如果有多個則用&來拼接。
post請求發送請求參數時,會將參數顯示在瀏覽器的url地址欄上,而是將參數存儲到http請求頭中的請求體中。

  1. 傳輸數據大小

get傳輸數據有大小的限制,一般以2-4k
post傳輸數據的大小是沒有限制的,可以修改成無限大。

  1. 後退頁面的反應

get請求後退後不會發送新的請求,而post在後退時,會重新發送一次新的請求。

  1. 是否被瀏覽器緩存

get請求會被瀏覽器主動緩存,而post請求不會,但是可以手動設置緩存。

  1. 是否保留到瀏覽器歷史記錄

get請求的參數會被保存到瀏覽器的歷史記錄中,而post不會。

  1. 編碼方式

get請求只支持發送ASCII嗎的參數類型,只支持url編碼,而post請求沒有限制,支持多種編碼格式。

  1. 安全性

顯然post比get更爲安全,因爲get請求在很多時候請求參數都是輕易可見的,可以簡單的從url從看到。

  1. post優點那麼多,那爲什麼還要有get呢?

因爲get的效率更高!! get常用於一些沒有存在安全隱患的場景,例如查詢一些公共資源…

參考:https://blog.csdn.net/FlyPigYe/article/details/91865135

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