asp中获取传递的参数,一般用request或者用request成员函数request.form,两种方式都可以获取页面表单传递过来的参数值,一直没留意两种方法有什么区别,我一般喜欢用request("abc")这样的形式,简单明了嘛。

最近修改了一些kingcms的代码,其中有一段代码是用request.form("abc")这样的形式获取传递的参数,可我在地址栏输入传递 的参数无论如何也无法通过这段代码获取,仔细看了一下,才发现,是由于request和request.form的不同机制造成的。

首先request本身是一个系统的静态对象,本身也可以作为数组调用,比如request("abc")就是获取request数组中键 值"abc"对应的值,而这个数组又不是固定的,而是多个数组的集合,其中包含了 (QueryString ,Form ,Cookies ,ClientCertificate,ServerVariables )这几个服务器变量 数组的值,也就是说,通过request可以依次遍历这几个数组并返回对应的值,使用起来很是方便,一劳永逸。

而request.form这个request的成员函数就不是那么宽泛的取值了,仅仅是从form数组中取值,也就是页面表 单<form>标签的输入单元(比如<input type=text >传递过来的值。那么通过form就无法获取链接字符串 中以index.asp?abc=123这样的形式传递过来的参数了。

还有一种方法是request.QueryString("abc")这种形式,可以获取QueryString 链接字符串传递的参数了。

以http的几种传递数据机制来说,这三种方法可以这样区分。request.form可以获取以post方式提交的数据,requst.querystring可以获取以get方法提交的数据,而request则是可以同时获取两种方法传递的数据。

按照传递数据量来说,request.form可以传递不限大小的数据,而request.querystring只能传递2k的数据量。

按照速度来说,request.qeurystring 会略快于request.form

最方便最好用的嘛,哈哈,就是request本身来的直接了,不管怎么传递的数据都能获取,性能嘛,略有下降,不过对于现在的网络和计算机来说,可以忽略不计,所以我最喜欢用request("abc")这样的写法

总结;

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方法不存在上述问 题,因此大量被应用在多个文本域提交数据和用户登陆的场合

转载于:https://www.cnblogs.com/Jayesslee/p/9355632.html

request和request.form和request.querystring的区别相关推荐

  1. Request、Request.Form和Request.QueryString的区别

    Request.Request.Form和Request.QueryString的区别 Request.Form:获取以POST方式提交的数据(接收Form提交来的数据): Request.Query ...

  2. http协议的Request Payload 和 Form Data 的区别

    Request Payload VS Form Data 前端请求 我看了前端发起的请求,请求正文并不是我熟悉的 Form Data,而是 Request Payload.如图注意下面两个请求的 Co ...

  3. python requests form data_Python爬虫:Request Payload和Form Data的简单区别说明

    Request Payload 和 Form Data 请求头上的参数差别在于: Content-Type Form Data Post表单请求 代码示例 headers = { "Cont ...

  4. Request对象接收Form表单提交

    转自:http://www.cnblogs.com/xdp-gacl/p/3798347.html Form表单: <title>HTML的form表单</title> < ...

  5. python中request获取数据,Python 中request数据的获取

    @app.route('/users', methods=['GET', 'POST']) def users(): print "Hello, World!" print(req ...

  6. e.g., malformed request syntax, invalid request message framing, or deceptive request routing

    报错 e.g., malformed request syntax, invalid request message framing, or deceptive request routing 以及f ...

  7. request的setAttribute()用法及request.sendRedirect 与 request.getRequestDispatcher.forward 的区别

    request.setAttribute()怎么用的? JSP1代码 String [] test=new String[2]; test[0]="1"; test[1]=&quo ...

  8. ajax上传文件报错The current request is not a multipart request的解决办法

    ajax上传文件报错The current request is not a multipart request的解决办法 主要报错语句为: The current request is not a ...

  9. 网站报错:Current request is not a multipart request

    在进行文件上传下载操作时,报这个错误 主要信息就是:Current request is not a multipart request 我报这个错误的原因主要是因为:在前端使用form表单提交信息时 ...

  10. 【Python3爬虫(三)】【urlib.request模块】【cookie+Request】

    上一篇:[Python3爬虫(二)][urlib.request模块][付费代理+auth认证] ++++++++++开始线++++++++++++++++++ 文章目录 一. cookie 1.1 ...

最新文章

  1. Python Qt GUI设计:QSlider滑动条类(基础篇—16)
  2. Fast ORB-SLAM
  3. silverlight学习之storyboard (动画)
  4. 数据结构和算法设计专题之---判断单链表中是否有环,环的长度,环的入口节点...
  5. flink下载以及兼容性问题
  6. 6月Unity技术路演华东站报名启动!
  7. Spring&Quartz集成自定义注释
  8. java适配器模式_适配器模式的设计,你get到了吗?
  9. 给侄子推荐的中学教辅资料清单
  10. 2.1.4 Python单例模式
  11. JavaScript学习(五十二)—继承、call方法和apply方法
  12. 单片机python编程入门_编程入门教程.doc
  13. 中文地址识别api的使用测试,快递地址自动补全,自动识别省市区,地址清洗,到底哪个好用?
  14. 如何下载哔哩哔哩的视频
  15. Android 集成 google 登录并获取 性别等隐私信息
  16. 工业镜头基础知识整理
  17. U.S. zip code
  18. vue-amap 实现定位+跑步路程+跑步时间计算功能
  19. 建筑工地通道管理系统(有效防止考勤作弊)
  20. 区别:二次型、标准形、规范形

热门文章

  1. Vue 2.x + Element后台模板开发教程(三)后台首页模板设计
  2. 系统的稳定性判定matlab,matlab分析系统稳定性的方法.doc
  3. 百度wz开户竞价推广如何做到降低平均点击价格
  4. PHPExcel浏览器输出Excel2007出错
  5. 一个老程序员的计算机视觉蹒跚学习之路
  6. 微分方程中解、特解、通解的区别
  7. Emulex:融合是一切发展的基础
  8. 用python批量爬qq号_简单教程 8位QQ靓号爬取并过滤 – Python版
  9. java实现的PC小说下载器+阅读器
  10. 经济学论文素材之汇率波动的外汇风险