get和post請求有哪些區別?


 1、從主流瀏覽器的實現角度看

下面的對比表格摘自: w3school -- HTTP 方法:GET 對比 POST

 

2、從 RFC 規范的(Safe-安全、Idempotent-冪等、Cacheable-可緩存性、語義)角度看 

  • GET 安全;POST 不安全
  • GET 冪等;POST 不冪等
  • GET 可緩存;POST 不可緩存
  • GET 用於信息獲取;POST 表示可能修改變服務器上的資源的請求

這里的安全是指,GET 只讀服務器數據不會修改; 冪等簡單理解就是每次請求結果和產生的影響都一樣。

 

3、注意問題

長度限制:http 協議並未規定 get 和post  的長度限制

                  get 的最大長度限制是因為瀏覽器和 web 服務器限制了 URL 的長度

                  不同的瀏覽器和web服務器,限制的最大長度不一樣

                  超出了最大長度,大部分的服務器直接截斷,有些服務器會報414錯誤

 

安全:這里的安全指使用過程中的安全

           GET 是通過 URL 方式請求,可以直接看到,明文傳輸; POST 參數通過 header 傳輸,同樣是明文

           瀏覽器會緩存和記錄 GET 請求及參數,不緩存 POST 的請求的參數(如參數中包含敏感信息可能被其他從瀏覽器的緩存和瀏覽記錄獲取)

 

參考:


原文鏈接
 


 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM