Jquery中request和request.form和request.querystring的区别


Posted in Javascript onNovember 26, 2015

Request.Form是获取以POST方式提交的表单数据;

Request.QueryString主要是获取地址栏参数或者以Get方式提交的数据

而Request则包含以上两种方式,会在Request.QueryString和Request.Form中都查询一遍变量。但是优先获取GET方式提交的数据,即Request.QueryString
Request:包含以上两种方式(优先获取GET方式提交的数据),它会在QueryString、Form、ServerVariable中都搜寻一遍。

而且有时候也会得到不同的结果。如果你仅仅是需要Form中的一个数据,但是你使用了Request而不是Request.Form,那么程序将在 QueryString、ServerVariable中也搜寻一遍。

如果正好你的QueryString或者ServerVariable里面也有同名 的项,你得到的就不是你原本想要的值了。

request.querystring 是用来接收地址里面?后面的xx=xx的内容

而request.form 是用来接收表单递交来的数据

例如 request("offline")

就无论采用的是以上哪种方法的字段值都可以读取了

request.form是指用form递交过来的数据。而request.querystring则是指用URL递交过来的。你用的是login.asp?offline=true,这个当然是URL递交的啦。

Request.Form和Request.QueryString两个接收参数来源不同,前者是接收从表单Form来的参数,后者是从URL来的参数。

你这有这一句logon.asp?offline=true这是URL的传递参数。

如果要用Request.Form()的话,那页面至少得有个表单,比如:

<form name=form1 method=post action=logon.asp> 
<input type=text name=user value=""> 
</form>

这样在提交过表单后,就可以用Request.Form("user")得到这个文本框传递过来得数值。

request.querystring和request.form的区别 
request.querystring是用post方法读取的 不安全 
request.form是用get方法读取的 
form表单中的method中看你是get还是post 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>无标题文档</title> 
</head> 
<body> 
<p> 
<% 
if request.querystring("offline")="true" then 
session.Abandon() 
response.Redirect("login1.htm") 
end if 
%> 
欢迎进入:<%=request.Form("user")%></p> 
<p>当前联机人数为:</p><%=application("onlinenum")%> 
<p><a href=login.asp?offline=true>离开</a></p> 
</body> 
</html>

总结;

1.Request.form方法,它是用来接收表单变量的(post 方法)

2.Request.QueryString方法, 它是接收URL参数的 (get 方法)

3.Request对象也可以不指明具体使用QueryString或是form方法,如request("变量"),因为它能自动识别,不过还是 指明为好,否则,要它自己判断也得花些微时间,影响程序执行效率。Request:包含以上两种方式(优先获取GET方式提交的数据),它会在 QueryString、Form、ServerVariable中都搜寻一遍。

两者除了接收方法不同外,还有传递数据量大小的问题,request.form方法能接收的数据没有限制,而 request.QueryString只能接收数据量小于2KB数据,当然后者的执行速度要比前者快。一般往数据库请求查询时用 request.QueryString方法,因为查询时只不过那么几个关键词,没有必要用request.form方法而导致查询速度变慢。另 外,request.QueryString方法还会把数据信息显示在客户端浏览器地址栏中,安全性较差。 request.form方法不存在上述问 题,因此大量被应用在多个文本域提交数据和用户登陆的场合

ps:get和post的区别

get方法把参数及参数值暴露给访客,所以是不安全的。而且url传送的参数长度有限,但便捷。
post方法传送的参数长度可以很大,而且参数及参数值不被访客所看到。

总结:

在使用request("Reportdate")读取传递的数据“Reportdate”对应的值的时候,无论是get方式还是post方式传送的参数都可以读到,原因是它默认先使用request.querystring读取然后用request.form读取,也就是,做了两遍读取的操作,速度自然会慢一些,也不安全。

例子:

public string ReportDate
{
  get { return Request.QueryString["reportDate"]; }
}

request对象有五个集合,下面予以介绍:

QueryString

:用以获取客户端附在url地址后的查询字符串中的信息。

例如:stra=Request.QueryString ["strUserld"]

Form

:用以获取客户端在FORM表单中所输入的信息。(表单的method属性值需要为POST)

例如:stra=Request.Form["strUserld"]

Cookies

:用以获取客户端的Cookie信息。

例如:stra=Request.Cookies["strUserld"]

ServerVariables

:用以获取客户端发出的HTTP请求信息中的头信息及服务器端环境变量信息。
例如:stra=Request.ServerVariables["REMOTE_ADDR"],返回客户端IP地址

ClientCertificate

:用以获取客户端的身份验证信息
例如:stra=Request.ClientCertificate["VALIDFORM"],对于要求安全验证的网站,返回有效起始日期。

Javascript 相关文章推荐
javascript工具库代码
Mar 29 Javascript
密码框显示提示文字jquery示例
Aug 29 Javascript
JS两种定义方式的区别、内部原理
Nov 21 Javascript
Javascript中的数据类型之旅
Oct 18 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
Nov 19 Javascript
JavaScript中数组添加值和访问值常见问题
Feb 06 Javascript
Javascript生成带参数的二维码示例
Oct 10 Javascript
jQuery实现广告条滚动效果
Aug 22 jQuery
JS实现的JSON数组去重算法示例
Apr 11 Javascript
vue-cli+iview项目打包上线之后图标不显示问题及解决方法
Oct 16 Javascript
js中forEach,for in,for of循环的用法示例小结
Mar 14 Javascript
Vue.js中Line第三方登录api的实现代码
Jun 29 Javascript
Jquery检验手机号是否符合规则并根据手机号检测结果将提交按钮设为不同状态
Nov 26 #Javascript
JS延时提示框实现方法详解
Nov 26 #Javascript
js使用cookie记录用户名的方法
Nov 26 #Javascript
Bootstrap每天必学之导航
Nov 26 #Javascript
js过滤HTML标签完整实例
Nov 26 #Javascript
使用EVAL处理jqchart jquery 折线图返回数据无效的解决办法
Nov 26 #Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
Nov 26 #Javascript
You might like
PHP计数器的实现代码
2013/06/08 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
jQuery使用技巧简单汇总
2013/04/18 Javascript
jQuery随便控制任意div隐藏的方法
2013/06/28 Javascript
JS+DIV+CSS实现仿表单下拉列表效果
2015/08/18 Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
2016/08/10 Javascript
easy ui datagrid 从编辑框中获取值的方法
2017/02/22 Javascript
js中删除数组中的某一元素实例(无下标时)
2017/02/28 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
jQuery.ajax向后台传递数组问题的解决方法
2017/05/12 jQuery
使用Dropzone.js上传的示例代码
2017/10/10 Javascript
Vue如何从1.0迁移到2.0
2017/10/19 Javascript
vue初尝试--项目结构(推荐)
2018/01/30 Javascript
JSON的parse()方法介绍
2019/01/31 Javascript
Element-ui中元素滚动时el-option超出元素区域的问题
2019/05/30 Javascript
微信小程序wx.request的简单封装
2019/11/13 Javascript
JS+Canvas实现五子棋游戏
2020/08/26 Javascript
[02:33]DOTA2亚洲邀请赛趣味视频之吐真话筒
2018/03/31 DOTA
easy_install python包安装管理工具介绍
2013/02/10 Python
在Python下使用Txt2Html实现网页过滤代理的教程
2015/04/11 Python
python 获取当天凌晨零点的时间戳方法
2018/05/22 Python
Python使用type动态创建类操作示例
2020/02/29 Python
keras的三种模型实现与区别说明
2020/07/03 Python
Jmeter HTTPS接口测试证书导入过程图解
2020/07/22 Python
亚马逊意大利站点:Amazon.it
2020/12/31 全球购物
国际贸易个人求职信范文
2014/01/04 职场文书
父亲追悼会答谢词
2014/01/17 职场文书
孝敬父母的活动方案
2014/08/28 职场文书
我的中国梦主题教育活动总结
2015/05/07 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
2016学校先进集体事迹材料
2016/02/29 职场文书
Python数据类型最全知识总结
2021/05/31 Python
Python函数式编程中itertools模块详解
2021/09/15 Python
Vue.js中v-bind指令的用法介绍
2022/03/13 Vue.js