您好,登錄后才能下訂單哦!
1、GET、POST
兩者是HTTP請求報文的方法,除此之外還有OPTION、HEAD、PUT、DELETE、TRACE、CONNECT。
GET:請求讀取由URL(統(tǒng)一資源定位符)所標(biāo)志的信息
POST:給服務(wù)器添加信息
1)根據(jù)HTTP規(guī)范,GET用于信息獲取,而且應(yīng)該是安全的和冪等的。
(1)所謂安全的意味著該操作用于獲取信息而非修改信息。換句話說,GET 請求一般不應(yīng)產(chǎn)生副作用。就是說,它僅僅是獲取資源信息,就像數(shù)據(jù)庫查詢一樣,不會修改,增加數(shù)據(jù),不會影響資源的狀態(tài)。
(2)冪等的意味著對同一URL的多個請求應(yīng)該返回同樣的結(jié)果。
2)根據(jù)HTTP規(guī)范,POST表示可能修改變服務(wù)器上的資源的請求
2、區(qū)別與聯(lián)系
1)GET請求的數(shù)據(jù)會附在URL之后(就是把數(shù)據(jù)放置在HTTP協(xié)議頭中),以?分割URL和傳輸數(shù)據(jù),參數(shù)之間以&相連。
POST把提交的數(shù)據(jù)則放置在是HTTP包的包體中。
2)"GET方式提交的數(shù)據(jù)最多只能是1024字節(jié)",因為GET是通過URL提交數(shù)據(jù),那么GET可提交的數(shù)據(jù)量就跟URL的長度有直接關(guān)系了。而實際上,URL不存在參數(shù)上限的問題,HTTP協(xié)議規(guī)范沒有對URL長度進行限制。這個限制是特定的瀏覽器及服務(wù)器對它的限制。IE對URL長度的限制是2083字節(jié)(2K+35)。對于其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限制取決于操作系統(tǒng)的支持。
注意這是限制是整個URL長度,而不僅僅是你的參數(shù)值數(shù)據(jù)長度。
理論上講,POST是沒有大小限制的,HTTP協(xié)議規(guī)范也沒有進行大小限制,起限制作用的是服務(wù)器的處理程序的處理能力。
3)獲取請求參數(shù)的方法不同,例如:在ASP中,服務(wù)端獲取GET請求參數(shù)用Request.QueryString,獲取POST請求參數(shù)用Request.Form。
4)POST的安全性要比GET的安全性高。比如:通過GET提交數(shù)據(jù),用戶名和密碼將明文出現(xiàn)在URL上,因為(1)登錄頁面有可能被瀏覽器緩存,(2)其他人查看瀏覽器的歷史紀(jì)錄,那么別人就可以拿到你的賬號和密碼了,除此之外,使用GET提交數(shù)據(jù)還可能會造成Cross-site request forgery***。
5)GET:查詢字符串顯示在地址欄的URL中,可見
POST:查詢字符串不會顯示在地址欄中,不可見
6)數(shù)據(jù)類型限制:
GET:只允許ASCII字符類型
POST:沒有限制。允許二進制數(shù)據(jù)
7)GET請求能夠被緩存,GET請求會保存在瀏覽器的瀏覽記錄中,以GET請求的URL能夠保存為瀏覽器書簽
POST:POST請求不能被緩存下來,POST請求不會保存在瀏覽器瀏覽記錄中,以POST請求的URL無法保存為瀏覽器書簽
8)點擊返回/刷新按鈕:
GET:沒有影響
POST:數(shù)據(jù)會重新發(fā)送(瀏覽器將會提示用戶“數(shù)據(jù)被從新提交”)
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。