1、共同點
get和post請求都是http的請求方式,用戶通過不同的http的請求方式完成對資源(url)的操作,GET、POST、PUT、DELETE就對應着這個資源的查、改、增、刪四個操作,具體點來講GET一般用於獲取/查詢資源信息,POST一般用於更新資源信息
http定義了與服務器之間的不同方法,最基本的方法有四種:GET、POST、PUT、DELETE,URL全稱是資源描述符,一個URL地址,用於描述網絡上的一個資源,而http中的GET、POST、PUT、DELETE四個操作對應着對這些資源的查、改、增、刪四個操作
2、區別
(1)get提交的數據會在地址欄顯示出來,而post請求不會在地址欄顯示出來
get方式:
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <form action="#" method="get"> <input name="username" type="text"> <input name="password" type="password"> <input type="submit"> </form> </body> </html>
get方式提交的用戶名和密碼都可以在地址欄看出來,就是把數據放在http協議頭中,以?分割url和傳輸數據,多個的話用&連接
post方式:
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <form action="#" method="post"> <input name="username" type="text"> <input name="password" type="password"> <input type="submit"> </form> </body> </html>
post提交方式,將提交的數據放在http包的包體中,地址欄不會改變
(2)傳輸數據的大小
http的get請求由於瀏覽器對地址欄長度的限制而導致傳輸的數據有限制,而post請求不會因為地址欄長度的限制而導致傳輸數據的限制
(3)安全性
get請求提交的數據會在地址欄顯示,所以可以通過歷史記錄找到密碼等相關信息,因此,post提交的方式要比get提交的方式安全性高
(4)請求緩存
get存在緩存,post不存在請求緩存