Http Get與Post請求區別

2019-10-16 23:02:58

GetPost請求之間有很多不同之處。下面來看看它們之間的差異:

GET POST
資料以報頭傳送,所以只能傳送有限資料的資料量。 可以傳送大量的資料,因為資料是以正文的形式傳送的。
GET請求不受保護,因為GET資料是直接在URL欄中顯示的。 POST請求相對安全一些,因為資料沒有在URL欄中公開。
GET請求可以加入瀏覽器書簽欄。 POST請求不可以加入瀏覽器書簽欄。
GET請求是冪等的。這意味著直到第一個請求的響應前,第二個請求將被忽略。 POST請求不是冪等的。
GET請求比POST請求更有效率,以及使用頻率更高。 POST請求比GET請求效率更低一些,以及使用頻率更低。

伺服器和用戶端之間的請求響應的兩種常用方法有:

  • GET - 它從指定的資源請求資料
  • POST - 它將處理的資料提交到指定的資源

GET請求的剖析

查詢字串(名稱/值對)在GET請求的URL內傳送:

GET /RegisterDao.jsp?key1=value1&key2=value2

我們知道在GET請求的情況下,資料是以請求頭(報頭)傳送的,它是預設請求型別。下面來看看傳送到伺服器的資訊。

GET請求的其他一些特性有:

  • 它仍然在瀏覽器歷史中
  • 它可以加到書籤
  • 它可以被快取
  • 它有長度限制
  • 在處理敏感資料時不應該使用它
  • 它只能用於檢索資料

POST請求的剖析

查詢字串(名稱/值對)在HTTP訊息正文中傳送用於POST請求:

POST/RegisterDao.jsp HTTP/1.1  
Host: www.tw511.com  
key1=value1&key2=value2

POST請求中,原始資料是在訊息正文中傳送的。下面來看看在POST請求時如何將資訊傳遞給伺服器。

POST請求的其他一些特性:

  • POST請求無法加入書籤
  • POST請求對資料長度沒有限制
  • POST請求從不快取
  • POST請求不會保留在瀏覽器歷史記錄中