GET和POST的區(qū)別
GET和POST本質(zhì)上就是TCP鏈接够吩,并無(wú)差別比然。但是由于HTTP的規(guī)定和瀏覽器/服務(wù)器的限制,導(dǎo)致他們?cè)趹?yīng)用過(guò)程中體現(xiàn)出一些不同周循。
服務(wù)器對(duì)GET和POST請(qǐng)求處理的差異
- 如果是GET請(qǐng)求强法,不讀取請(qǐng)求體,業(yè)務(wù)數(shù)據(jù)從path的search或hash中讀取
- 如果是POST請(qǐng)求湾笛,讀取請(qǐng)求體饮怯,業(yè)務(wù)數(shù)據(jù)從請(qǐng)求體中獲取,關(guān)于請(qǐng)求體的格式嚎研,不同的服務(wù)器蓖墅、同一個(gè)服務(wù)器的不同服務(wù)要求不同
在瀏覽器地址欄中輸入url地址是不能產(chǎn)生POST請(qǐng)求的,可以使用表單提交產(chǎn)生POST請(qǐng)求
由于服務(wù)器對(duì)GET和POST處理的差異临扮,造成了GET和POST請(qǐng)求的差異:
- GET請(qǐng)求一般沒(méi)有請(qǐng)求體论矾,POST請(qǐng)求有
- GET請(qǐng)求的業(yè)務(wù)數(shù)據(jù)放在地址中,安全性較差(誤分享杆勇、被偷窺)
- GET請(qǐng)求傳遞的業(yè)務(wù)數(shù)據(jù)量是有限的贪壳,POST是無(wú)限的(除非服務(wù)器限制)
- GET請(qǐng)求利于分享頁(yè)面結(jié)果,POST不行
-
在瀏覽器中刷新或回退頁(yè)面時(shí)蚜退,會(huì)按照該頁(yè)面之前的請(qǐng)求方式重新發(fā)送請(qǐng)求闰靴,如果是GET請(qǐng)求,瀏覽器會(huì)重新發(fā)送GET請(qǐng)求钻注;如果是POST請(qǐng)求蚂且,瀏覽器會(huì)重新構(gòu)建之前的消息體數(shù)據(jù),通常會(huì)彈出提示
GET和POST的區(qū)別.png