request會(huì )按順序搜索全部的集合—QueryString、Form、Cookies、ClientCertificate、ServerVarible直到發(fā)現第一個(gè)匹配值的名稱(chēng),這樣做的集合效率低,并且是不安全的。
request包含各種方式的值,沒(méi)有指名是什麼,Request.Form()、Request.QueryString()等都包含在裏面,但是它們之間有個(gè)優(yōu)先級問(wèn)題,一般應該是get比post優(yōu)先級高些。
request.form是post傳遞方式
request.querystring是set傳遞方式
比如:
<form method="post"action="xxx.aspx?id=2">
<input id="id" type="text"name="id">
</form>
當我們提交這個(gè)表單時(shí)同時(shí)傳遞了兩個(gè)id值,一個(gè)是form裏input的id它以post方式提交,而另一個(gè)是action裏的url傳遞了一個(gè)以get方式提交的id。
那麼我們如果用Request("id")得到的是哪一個(gè)值?就得據其優(yōu)先級才知道,一般應該是get比post優(yōu)先級高些,但是,如果我用Request.Form("id")一定得到的是以post提交的input裏輸入的值,而用Request.QueryString("id")得到的一定是以get方式提交的值,所以要養成好習慣都寫(xiě)全,不要都用Request(),除非我們能夠確認只有一個(gè)不會(huì )有重復。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。