網路 Get 請求與 Post 請求的區別

2021-07-03 05:07:06 字數 1130 閱讀 5368

1.get

提交,請求的資料會附在

url之後(就是把資料放置在

協議頭<

request-line

>中),以?分割url和傳輸資料,多個引數用&連線;例如:login.action?name=hyddd&password=idontknow&verify=%e4%bd%a0%e5%a5%bd。如果資料是英文本母/數字,原樣傳送,如果是空格,轉換為+,如果是中文/其他字元,則直接把字串用base64加密,得出如:%e4%bd%a0%e5%a5%bd,其中%xx中的xx為該符號以16進製表示的ascii。

post

提交:把提交的資料放置在是

包的包體<

request-body

>中。上文示例中紅色字型標明的就是實際的傳輸資料

因此,get

提交的資料會在位址列中顯示出來,而

post

提交,位址列不會改變

2.傳輸資料的大小:

首先宣告,http

協議沒有對傳輸的資料大小進行限制,

協議規範也沒有對

url長度進行限制。 而在實際開發中存在的限制主要有:

get:特定瀏覽器和伺服器對

url長度有限制,例如ie對url長度的限制是2083位元組(2k+35)。對於其他瀏覽器,如netscape、firefox等,理論上沒有長度限制,其限制取決於作業系統的支援。

因此對於get

提交時,傳輸資料就會受到

url長度的限制。

post:

由於不是通過

url傳值,理論上資料不受限。但實際各個web伺服器會規定對post提交資料大小進行限制,apache、iis6都有各自的配置。

3.安全性:

post

的安全性要比

get的安全性高。注意:這裡所說的安全性和上面get提到的「安全」不是同個概念。上面「安全」的含義僅僅是不作資料修改,而這裡安全的含義是真正的security的含義,比如:通過

get提交資料,使用者名稱和密碼將明文出現在

url上,因為

(1)登入頁面有可能被瀏覽器快取,

(2)其他人檢視瀏覽器的歷史紀錄,那麼別人就可以拿到你的賬號和密碼了。

Get請求 Post請求

複製直接用 post同步請求 void synchronourequestbypost post非同步請求 1.方法 void asynchronourequestbypost void connection nsurlconnection connection didreceiveresponse...

get請求 post請求

今天由於群裡的人說出了這個問題,在這裡總結一下,順便加強記憶。get和post是http請求的兩種基本方法,要說它們的區別 直觀的區別就是get把引數包含在url中,post通過request body傳遞引數 本標準答案參考自w3schools 這只是乙個表面的並不是深層的更深一步理解 get和p...

POST 請求 GET請求

get 引數 username 和 password 1.get的請求都拼接在url中 2.後面是跟的引數 前面跟的都是介面 3.引數的形式key value key2 value2 對於get請求 所有得引數都拼接在url中,這樣暴露在外面 會造成資料的不安全 url的長度是有限制的 如果引數過於...