1. 程式人生 > >post和get區別,其他答案真的太坑

post和get區別,其他答案真的太坑

原理:

get和post都是http定義與伺服器互動的方法,還有put,delete

url是網路上的資源,那麼http中的get,post,put,delete對應的就是對這個資源的查,改,增,刪四個操作,因此會說get一般是用來獲取/查詢伺服器資源資訊,post一般是用於更新伺服器資源資訊。

get是向伺服器傳送取資料的一種請求,而post是向伺服器提交資料的一種請求,在FORM(表單)中,Method預設為"GET",實質上,GET和POST只是傳送機制不同,並不是一個取一個發!

 

表面:

1.隱私性:get請求的資料會附在url之後(就是把資料放置在HTTP協議頭中),以?分割URL和傳輸資料,引數之間以&相連,如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD)

post則是把提交的資料放置在http包的包體中

2.長度限制:雖然http協議對url不存在引數上限的問題,但是特定的瀏覽器以及伺服器對url長度是有限制的。(IE對URL長度的限制是2083位元組(2K+35)。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限制取決於作業系統的支援)

因此get請求提交的資料是由上限的,但是上限多少,是取決於特定的瀏覽器以及伺服器對url長度。

post請求理論上是沒有大小限制的,

 

 

 

參照: http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html