大剑无锋之post那么多优点,为什么还用get
post那么多優(yōu)點(diǎn),為什么還用get
?
先簡單說一下,Post和Get
1. get是從服務(wù)器上獲取數(shù)據(jù),post是向服務(wù)器傳送數(shù)據(jù)。
2.get是把參數(shù)數(shù)據(jù)隊(duì)列加到提交表單的ACTION屬性所指的URL中,值和表單內(nèi)各個(gè)字段一一對(duì)應(yīng),在URL中可以看到。post是通過HTTPpost機(jī)制,將表單內(nèi)各個(gè)字段與其內(nèi)容放置在HTML HEADER內(nèi)一起傳送到ACTION屬性所指的URL地址。用戶看不到這個(gè)過程。
3. 對(duì)于get方式,服務(wù)器端用Request.QueryString獲取變量的值,對(duì)于post方式,服務(wù)器端用Request.Form獲取提交的數(shù)據(jù)。
4. get傳送的數(shù)據(jù)量較小,不能大于2KB。post傳送的數(shù)據(jù)量較大,一般被默認(rèn)為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。
5. get安全性非常低,post安全性較高。
百度搜索為什么要用GET方法進(jìn)行搜索?
可以看一下http協(xié)議的內(nèi)容 http請(qǐng)求主要有三種方式 get,head,post ,而ie發(fā)起一個(gè)請(qǐng)求一般包含,消息頭和消息體, 如果請(qǐng)求的方式是get或者h(yuǎn)ead方式,那么ie只發(fā)送消息頭到服務(wù)器, 如果是post請(qǐng)求,那么消息體(網(wǎng)頁表單內(nèi)容)和消息頭都將傳送到服務(wù)器,這樣數(shù)據(jù)量就比其它兩種方式的大一些 那么,依照上面所說,get方式請(qǐng)求,速度更快,但是,由于url是暴露在了用戶面前,可能導(dǎo)致sql注入等非法攻擊, 用post方式提交,速度會(huì)慢一些。但是由于url是隱藏在了表單中,所以安全性會(huì)好一點(diǎn),這就是為什么,一般登錄頁面都用post提交而不用get提交。
減低服務(wù)器流量壓力
get主要用來“讀取”數(shù)據(jù),而“post”主要用于修改、插入數(shù)據(jù)。
小補(bǔ)充:
如果沒有考慮到用戶體驗(yàn)的問題,如果get方式,url會(huì)變化,post則不會(huì)。
如果用戶想要將他搜索的結(jié)果鏈接復(fù)制給其他人,那么通過get方式,他人可以直接訪問到搜索結(jié)果,如果是post方式,則只會(huì)顯示最初的搜索界面。
摘自:https://blog.csdn.net/houbc_/article/details/79470317
?
?
總結(jié)
以上是生活随笔為你收集整理的大剑无锋之post那么多优点,为什么还用get的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: shell脚本获取系统的前一天日期,格式
- 下一篇: 浅析Hadoop的三个作业调度器