Get
和Post
請求之間有很多不同之處。下麵來看看它們之間的差異:
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.xuhuhu.com
key1=value1&key2=value2
在POST
請求中,原始數據是在消息正文中發送的。下麵來看看在POST
請求時如何將資訊傳遞給伺服器。
POST請求的其他一些特性:
POST
請求無法加入書簽POST
請求對數據長度沒有限制POST
請求從不緩存POST
請求不會保留在流覽器歷史記錄中
上一篇:
Web技術基礎
下一篇:
Servlet API