Jquery中request和request.form和request.querystring的區(qū)別
Request.Form是獲取以POST方式提交的表單數(shù)據(jù);
Request.QueryString主要是獲取地址欄參數(shù)或者以Get方式提交的數(shù)據(jù)
而Request則包含以上兩種方式,會(huì)在Request.QueryString和Request.Form中都查詢一遍變量。但是優(yōu)先獲取GET方式提交的數(shù)據(jù),即Request.QueryString
Request:包含以上兩種方式(優(yōu)先獲取GET方式提交的數(shù)據(jù)),它會(huì)在QueryString、Form、ServerVariable中都搜尋一遍。
而且有時(shí)候也會(huì)得到不同的結(jié)果。如果你僅僅是需要Form中的一個(gè)數(shù)據(jù),但是你使用了Request而不是Request.Form,那么程序?qū)⒃?QueryString、ServerVariable中也搜尋一遍。
如果正好你的QueryString或者ServerVariable里面也有同名 的項(xiàng),你得到的就不是你原本想要的值了。
request.querystring 是用來(lái)接收地址里面?后面的xx=xx的內(nèi)容
而request.form 是用來(lái)接收表單遞交來(lái)的數(shù)據(jù)
例如 request("offline")
就無(wú)論采用的是以上哪種方法的字段值都可以讀取了
request.form是指用form遞交過(guò)來(lái)的數(shù)據(jù)。而request.querystring則是指用URL遞交過(guò)來(lái)的。你用的是login.asp?offline=true,這個(gè)當(dāng)然是URL遞交的啦。
Request.Form和Request.QueryString兩個(gè)接收參數(shù)來(lái)源不同,前者是接收從表單Form來(lái)的參數(shù),后者是從URL來(lái)的參數(shù)。
你這有這一句logon.asp?offline=true這是URL的傳遞參數(shù)。
如果要用Request.Form()的話,那頁(yè)面至少得有個(gè)表單,比如:
<form name=form1 method=post action=logon.asp> <input type=text name=user value=""> </form>
這樣在提交過(guò)表單后,就可以用Request.Form("user")得到這個(gè)文本框傳遞過(guò)來(lái)得數(shù)值。
request.querystring和request.form的區(qū)別
request.querystring是用post方法讀取的 不安全
request.form是用get方法讀取的
form表單中的method中看你是get還是post
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>無(wú)標(biāo)題文檔</title>
</head>
<body>
<p>
<%
if request.querystring("offline")="true" then
session.Abandon()
response.Redirect("login1.htm")
end if
%>
歡迎進(jìn)入:<%=request.Form("user")%></p>
<p>當(dāng)前聯(lián)機(jī)人數(shù)為:</p><%=application("onlinenum")%>
<p><a href=login.asp?offline=true>離開(kāi)</a></p>
</body>
</html>
總結(jié);
1.Request.form方法,它是用來(lái)接收表單變量的(post 方法)
2.Request.QueryString方法, 它是接收URL參數(shù)的 (get 方法)
3.Request對(duì)象也可以不指明具體使用QueryString或是form方法,如request("變量"),因?yàn)樗茏詣?dòng)識(shí)別,不過(guò)還是 指明為好,否則,要它自己判斷也得花些微時(shí)間,影響程序執(zhí)行效率。Request:包含以上兩種方式(優(yōu)先獲取GET方式提交的數(shù)據(jù)),它會(huì)在 QueryString、Form、ServerVariable中都搜尋一遍。
兩者除了接收方法不同外,還有傳遞數(shù)據(jù)量大小的問(wèn)題,request.form方法能接收的數(shù)據(jù)沒(méi)有限制,而 request.QueryString只能接收數(shù)據(jù)量小于2KB數(shù)據(jù),當(dāng)然后者的執(zhí)行速度要比前者快。一般往數(shù)據(jù)庫(kù)請(qǐng)求查詢時(shí)用 request.QueryString方法,因?yàn)椴樵儠r(shí)只不過(guò)那么幾個(gè)關(guān)鍵詞,沒(méi)有必要用request.form方法而導(dǎo)致查詢速度變慢。另 外,request.QueryString方法還會(huì)把數(shù)據(jù)信息顯示在客戶端瀏覽器地址欄中,安全性較差。 request.form方法不存在上述問(wèn) 題,因此大量被應(yīng)用在多個(gè)文本域提交數(shù)據(jù)和用戶登陸的場(chǎng)合
ps:get和post的區(qū)別
get方法把參數(shù)及參數(shù)值暴露給訪客,所以是不安全的。而且url傳送的參數(shù)長(zhǎng)度有限,但便捷。
post方法傳送的參數(shù)長(zhǎng)度可以很大,而且參數(shù)及參數(shù)值不被訪客所看到。
總結(jié):
在使用request("Reportdate")讀取傳遞的數(shù)據(jù)“Reportdate”對(duì)應(yīng)的值的時(shí)候,無(wú)論是get方式還是post方式傳送的參數(shù)都可以讀到,原因是它默認(rèn)先使用request.querystring讀取然后用request.form讀取,也就是,做了兩遍讀取的操作,速度自然會(huì)慢一些,也不安全。
例子:
public string ReportDate
{
get { return Request.QueryString["reportDate"]; }
}
request對(duì)象有五個(gè)集合,下面予以介紹:
QueryString
:用以獲取客戶端附在url地址后的查詢字符串中的信息。
例如:stra=Request.QueryString ["strUserld"]
Form
:用以獲取客戶端在FORM表單中所輸入的信息。(表單的method屬性值需要為POST)
例如:stra=Request.Form["strUserld"]
Cookies
:用以獲取客戶端的Cookie信息。
例如:stra=Request.Cookies["strUserld"]
ServerVariables
:用以獲取客戶端發(fā)出的HTTP請(qǐng)求信息中的頭信息及服務(wù)器端環(huán)境變量信息。
例如:stra=Request.ServerVariables["REMOTE_ADDR"],返回客戶端IP地址
ClientCertificate
:用以獲取客戶端的身份驗(yàn)證信息
例如:stra=Request.ClientCertificate["VALIDFORM"],對(duì)于要求安全驗(yàn)證的網(wǎng)站,返回有效起始日期。
- asp.net中“從客戶端中檢測(cè)到有潛在危險(xiǎn)的Request.Form值”錯(cuò)誤的解決辦法
- ASP.NET檢測(cè)到不安全 Request.Form 值解決方案匯總
- ASP.NET從客戶端中檢測(cè)到有潛在危險(xiǎn)的request.form值的3種解決方法
- 有潛在危險(xiǎn)的 Request.Form 值避免方法
- ASP.NET中Request.Form中文亂碼的解決方法
- asp.net 從客戶端中檢測(cè)到有潛在危險(xiǎn)的 Request.Form 值錯(cuò)誤解
- 從客戶端檢測(cè)到有潛在危險(xiǎn)的Request.Form值的asp.net代碼
- C# Request.Form用法案例詳解
相關(guān)文章
jQuery實(shí)現(xiàn)的粘性滾動(dòng)導(dǎo)航欄效果實(shí)例【附源碼下載】
這篇文章主要介紹了jQuery實(shí)現(xiàn)的粘性滾動(dòng)導(dǎo)航欄效果,涉及jQuery插件smint的相關(guān)使用技巧,并附帶完整實(shí)例源碼供讀者下載參考,需要的朋友可以參考下2017-10-10
Jquery+bootstrap實(shí)現(xiàn)表格行置頂置底上移下移操作詳解
這篇文章主要為大家詳細(xì)介紹了Jquery+bootstrap實(shí)現(xiàn)表格行置頂置底上移下移操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
jQuery滑動(dòng)效果實(shí)現(xiàn)方法分析
這篇文章主要介紹了jQuery滑動(dòng)效果實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了jQuery實(shí)現(xiàn)滑動(dòng)效果常用的slideDown()、slideUp()及slideToggle()方法相關(guān)使用技巧,需要的朋友可以參考下2018-09-09
jQuery 拖動(dòng)層(在可視區(qū)域范圍內(nèi))
獲取層元素,在瀏覽器可視區(qū)域的最左、最邊,最上、最下的值。并且在拖動(dòng)層的過(guò)程中,把當(dāng)前層的坐標(biāo)值,去和這幾個(gè)值,做比較,如果超過(guò)這些值。那么就不能再拖動(dòng)這個(gè)方向,即把值設(shè)為最小或最大2012-05-05
利用jQuery設(shè)計(jì)一個(gè)簡(jiǎn)單的web音樂(lè)播放器的實(shí)例分享
這篇文章主要介紹了利用jQuery設(shè)計(jì)一個(gè)簡(jiǎn)單的web音樂(lè)播放器的實(shí)例分享,包括PHP后臺(tái)和從MySQL中讀取曲目等基本功能的實(shí)現(xiàn),需要的朋友可以參考下2016-03-03
jquery實(shí)現(xiàn)省市select下拉框的替換(示例代碼)
本篇文章主要是對(duì)jquery實(shí)現(xiàn)省市select下拉框的替換(示例代碼)進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02
jQuery簡(jiǎn)單實(shí)現(xiàn)列表隱藏和顯示效果示例
這篇文章主要介紹了jQuery簡(jiǎn)單實(shí)現(xiàn)列表隱藏和顯示效果,結(jié)合實(shí)例形式分析了jQuery中slideToggle動(dòng)態(tài)操作頁(yè)面元素切換的相關(guān)技巧,需要的朋友可以參考下2016-09-09
jquery實(shí)現(xiàn)點(diǎn)擊消失的代碼
這篇文章主要介紹了jquery如何實(shí)現(xiàn)點(diǎn)擊消失,需要的朋友可以參考下2014-03-03

