get和post請求方式的區別 匿名使用者 1級 2016-07-05 回答

Http方法:Get請求與Post請求的區別

Get是向伺服器發索取資料的一種請求,而Post是向伺服器提交資料的一種請求

Get是獲取資訊,而不是修改資訊,類似資料庫查詢功能一樣,資料不會被修改

Get請求的引數會跟在url後進行傳遞,請求的資料會附在URL之後,以?分割URL和傳輸資料,引數之間以&相連,%XX中的XX為該符號以16進製表示的ASCII,如果資料是英文字母/數字,原樣傳送,如果是空格,轉換為+,如果是中文/其他字元,則直接把字串用BASE64加密。

Get傳輸的資料有大小限制,因為GET是透過URL提交資料,那麼GET可提交的資料量就跟URL的長度有直接關係了,不同的瀏覽器對URL的長度的限制是不同的。

GET請求的資料會被瀏覽器快取起來,使用者名稱和密碼將明文出現在URL上,其他人可以查到歷史瀏覽記錄,資料不太安全。在伺服器端,用Request。QueryString來獲取Get方式提交來的資料

Post請求則作為http訊息的實際內容傳送給web伺服器,資料放置在HTML Header內提交,Post沒有限制提交的資料。Post比Get安全,當資料是中文或者不敏感的資料,則用get,因為使用get,引數會顯示在地址,對於敏感資料和不是中文字元的資料,則用post

POST表示可能修改變伺服器上的資源的請求,在伺服器端,用Post方式提交的資料只能用Request。Form來獲取

get和post請求方式的區別 兜兜有糖 1級 2016-07-06 回答

1

get是從伺服器上獲取資料,post是向伺服器傳送資料。

2

get是把引數資料佇列加到提交表單的action屬性所指的url中,值和表單內各個欄位一一對應,在url中可以看到。post是透過http post機制,將表單內各個欄位與其內容放置在html header內一起傳送到action屬性所指的url地址。使用者看不到這個過程。

3

對於get方式,伺服器端用request。querystring獲取變數的值,對於post方式,伺服器端用request。form獲取提交的資料。

4

get傳送的資料量較小,不能大於2kb。post傳送的資料量較大,一般被預設為不受限制。但理論上,iis4中最大量為80kb,iis5中為100kb。

5

get安全性非常低,post安全性較高。

6

http 定義了與伺服器互動的不同方法,最基本的方法是 get 和 post。事實上 get 適用於多數請求,而保留 post 僅用於更新站點。根據 http 規範,get 用於資訊獲取,而且應該是 安全的和冪等的。所謂安全的意味著該操作用於獲取資訊而非修改資訊。換句話說,get 請求一般不應產生副作用。冪等的意味著對同一 url 的多個請求應該返回同樣的結果。完整的定義並不像看起來那樣嚴格。從根本上講,其目標是當用戶開啟一個連結時,她可以確信從自身的角度來看沒有改變資源。 比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認為是安全的和冪等的,因為它總是返回當前的新聞。反之亦然。post 請求就不那麼輕鬆了。post 表示可能改變伺服器上的資源的請求。仍然以新聞站點為例,讀者對文章的註解應該透過 post 請求實現,因為在註解提交之後站點已經不同了

7

在form提交的時候,如果不指定method,則預設為get請求,form中提交的資料將會附加在url之後,以?分開與url分開。字母數字字元原 樣傳送,但空格轉換為“+“號,其它符號轉換為%xx,其中xx為該符號以16進製表示的ascii(或iso latin-1)值。get請求請提交的資料放置在http請求協議頭中,而post提交的資料則放在實體資料中;get方式提交的資料最多隻能有1024位元組,而post則沒有此限制