国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

淺談ASP中Request對象獲取客戶端數(shù)據(jù)的順序

2019-11-18 19:32:48
字體:
供稿:網(wǎng)友

/**
描述:在使用asp Request對象時需要注意的小問題
作者:慈勤強
Email : cQQ1978@yeah.net
**/

在ASP中Request對象是獲取客戶端提交數(shù)據(jù)的一個很重要的對象,大家對他也是非常熟悉了。
雖然如此,還是經(jīng)常有人問我下面的幾種寫法有什么不同,到底應(yīng)該怎么寫?
strMessage = Request("msg")
strMessage = Request.Form("msg")

而且,我也看過好多人寫的代碼,一律都是Request("")的寫法,當(dāng)然這樣的寫法并沒有什么錯。
只是大家應(yīng)該注意
Request對象有幾個集合來獲取客戶端提交的數(shù)據(jù),一般常用的是QueryString,Form和ServerVariables。
而不管對于哪種集合其實都是可以通過Request("")這樣直接取得的,這里就有一個問題,如果
Get方式和Post方式提交了同樣的一個變量,比如username=cqq,那么你用Request("username")
取出來的到底是Get過來的數(shù)據(jù)還是Post過來的數(shù)據(jù)呢?

所以,問題到了這里,大家就應(yīng)該想到了, Request從這幾個集合取數(shù)據(jù)是有順序的,從前到后
的順序依次是 QueryString,Form,最后是ServerVariables。Request對象按照這樣的順序依次搜索
這幾個集合中的變量,如果有符合的就中止,后面的就不管了。 所以上面的例子Request("username")
取到的實際是Get方法提交的數(shù)據(jù)。

所以為了提高效率,減少無謂的搜索時間,同時也是為了程序的規(guī)范,建議大家還是用Request.集合的
方式更好一點,比如Request.Form("username")。

下面是一個測試例子,提交以后,大家可以直接在地址后面加上 ?username=aaa 來測試:

<%
If  request("submit")<>"" then
 Response.Write "直接取:"& Request("username") & "<br>"
 Response.Write "取Get:" & Request.QueryString("username") & "<br>"
 Response.Write "取Post:" & Request.Form("username") & "<br>"
End if
%>
<form name=form1 action="" method=post>
<input type=test name="username" value="postuser">
<input type=submit name="submit" value="test">
</form>


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 桃园县| 兴安盟| 兰坪| 枞阳县| 淮北市| 宜宾县| 汝城县| 富蕴县| 成武县| 温宿县| 珠海市| 桦川县| 信宜市| 万载县| 哈尔滨市| 临朐县| 肃宁县| 蓝田县| 宣化县| 广平县| 安顺市| 陈巴尔虎旗| 新民市| 抚顺县| 印江| 梁河县| 阿拉善右旗| 万荣县| 高邑县| 八宿县| 舒城县| 柳林县| 平昌县| 于都县| 大田县| 岳池县| 井冈山市| 红安县| 鲁甸县| 吕梁市| 亚东县|