扒一扒post和get

通俗理解上的區(qū)別:

1. GET請(qǐng)求的參數(shù)都放在URL里惨险,所以參數(shù)是直接暴露的肥印;而POST是通過(guò)request body 來(lái)傳遞參數(shù)的

?var xhr=new XMLHttpRequest()

?var body = new formData()

?body.append('A',A)

因此? 超鏈接 或者 瀏覽器地址欄直接輸U(kuò)RL 都是 GET請(qǐng)求方式

而表單(form)提交數(shù)據(jù)一般都是POST 請(qǐng)求方式

(而使用method 為 GET 的形式提交數(shù)據(jù)將會(huì)使提交的參數(shù)暴露到URL上)

GET傳數(shù)據(jù)會(huì)顯示于URL呀伙,如我們填寫數(shù)據(jù)提交后跳轉(zhuǎn)URL看到:www. abc. com/index.php?a=1 ?這個(gè)就代表GET傳的a數(shù)據(jù)為1。

POST傳數(shù)據(jù)是隱藏傳遞數(shù)據(jù),跳轉(zhuǎn)時(shí)URL網(wǎng)址是不帶數(shù)據(jù)舵鳞。

此外探入,form表單用get請(qǐng)求提交數(shù)據(jù)時(shí)如果url的參數(shù)中帶有中文字符常會(huì)出現(xiàn)亂碼問(wèn)題狡孔,其解決方式比較復(fù)雜。

2.GET請(qǐng)求參數(shù)會(huì)被完整保留在瀏覽器歷史記錄里蜂嗽,而POST中的參數(shù)不會(huì)被保留苗膝。

3.GET請(qǐng)求在URL中傳送的參數(shù)是有長(zhǎng)度限制的,傳送的數(shù)據(jù)量較小徒爹,不能大于2KB荚醒。POST傳送的數(shù)據(jù)量較大,一般被默認(rèn)為不受限制隆嗅。

4.對(duì)參數(shù)的數(shù)據(jù)類型界阁,GET只接受ASCII字符,而POST沒(méi)有限制胖喳。



現(xiàn)在泡躯,我們來(lái)看下get和post請(qǐng)求的本質(zhì):

首先,GET和POST是HTTP協(xié)議中的兩種發(fā)送請(qǐng)求的方法丽焊,從而可以得知:

1. GET和POST與數(shù)據(jù)如何傳遞沒(méi)有關(guān)系

GET和POST是由HTTP協(xié)議定義的较剃。在HTTP協(xié)議中,Method和Data(URL技健, Body写穴, Header)是正交的兩個(gè)概念,也就是說(shuō)雌贱,使用哪個(gè)Method與應(yīng)用層的數(shù)據(jù)如何傳輸是沒(méi)有相互關(guān)系的啊送。

HTTP沒(méi)有要求偿短,如果Method是POST數(shù)據(jù)就要放在BODY中。也沒(méi)有要求馋没,如果Method是GET昔逗,數(shù)據(jù)(參數(shù))就一定要放在URL中而不能放在BODY中。

那么篷朵,網(wǎng)上流傳甚廣的GET和POST的差異是從何而來(lái)的呢勾怒?我在HTML標(biāo)準(zhǔn)中,找到了相似的描述声旺。這和網(wǎng)上流傳的說(shuō)法一致笔链。但是這只是HTML標(biāo)準(zhǔn)對(duì)HTTP協(xié)議的用法的約定。怎么能當(dāng)成GET和POST的區(qū)別呢艾少?

而且卡乾,現(xiàn)代的Web Server都是支持GET中包含BODY這樣的請(qǐng)求。雖然這種請(qǐng)求不可能從瀏覽器發(fā)出缚够,但是現(xiàn)在的Web Server又不是只給瀏覽器用幔妨,已經(jīng)完全地超出了HTML服務(wù)器的范疇了。

2. HTTP協(xié)議對(duì)GET和POST都沒(méi)有對(duì)長(zhǎng)度的限制

HTTP協(xié)議明確地指出了谍椅,HTTP頭和Body都沒(méi)有長(zhǎng)度的要求误堡。而對(duì)于URL長(zhǎng)度上的限制,有兩方面的原因造成:

一方面是? 瀏覽器雏吭,(大多數(shù))瀏覽器通常都會(huì)限制URL長(zhǎng)度在2K個(gè)字節(jié)锁施,超過(guò)的部分,恕不處理杖们。

另一方面是? 服務(wù)器悉抵,(大多數(shù))服務(wù)器最多處理64K大小的URL。URL長(zhǎng)了摘完,對(duì)服務(wù)器處理也是一種負(fù)擔(dān)姥饰。原本一個(gè)會(huì)話就沒(méi)有多少數(shù)據(jù),現(xiàn)在如果有人惡意地構(gòu)造幾個(gè)幾M大小的URL孝治,并不停地訪問(wèn)你的服務(wù)器列粪。服務(wù)器的最大并發(fā)數(shù)顯然會(huì)下降。另一種攻擊方式是谈飒,把告訴服務(wù)器Content-Length是一個(gè)很大的數(shù)岂座,然后只給服務(wù)器發(fā)一點(diǎn)兒數(shù)據(jù),嘿嘿杭措,服務(wù)器你就傻等著去吧费什。哪怕你有超時(shí)設(shè)置,這種故意的次次訪問(wèn)超時(shí)也能讓服務(wù)器吃不了兜著走手素。有鑒于此吕喘,多數(shù)服務(wù)器出于安全啦赘那、穩(wěn)定啦方面的考慮,會(huì)給URL長(zhǎng)度加限制氯质。但是這個(gè)限制是針對(duì)所有HTTP請(qǐng)求的,與GET祠斧、POST沒(méi)有關(guān)系闻察。

此外,HTTP的底層是TCP/IP琢锋,所以GET和POST的底層也是TCP/IP辕漂,也就是說(shuō),GET/POST都是TCP鏈接吴超。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末钉嘹,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子鲸阻,更是在濱河造成了極大的恐慌跋涣,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鸟悴,死亡現(xiàn)場(chǎng)離奇詭異陈辱,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)细诸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門沛贪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人震贵,你說(shuō)我怎么就攤上這事利赋。” “怎么了猩系?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵媚送,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我蝙眶,道長(zhǎng)季希,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任幽纷,我火速辦了婚禮式塌,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘友浸。我一直安慰自己峰尝,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布收恢。 她就那樣靜靜地躺著武学,像睡著了一般祭往。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上火窒,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天硼补,我揣著相機(jī)與錄音,去河邊找鬼熏矿。 笑死已骇,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的票编。 我是一名探鬼主播褪储,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼慧域!你這毒婦竟也來(lái)了鲤竹?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤昔榴,失蹤者是張志新(化名)和其女友劉穎辛藻,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體论泛,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡揩尸,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了屁奏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片岩榆。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖坟瓢,靈堂內(nèi)的尸體忽然破棺而出勇边,到底是詐尸還是另有隱情,我是刑警寧澤折联,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布粒褒,位于F島的核電站,受9級(jí)特大地震影響诚镰,放射性物質(zhì)發(fā)生泄漏奕坟。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一清笨、第九天 我趴在偏房一處隱蔽的房頂上張望月杉。 院中可真熱鬧,春花似錦抠艾、人聲如沸苛萎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)腌歉。三九已至蛙酪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間翘盖,已是汗流浹背桂塞。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留馍驯,地道東北人藐俺。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像泥彤,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子卿啡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容