Request对象获取数据「建议收藏」

Request对象获取数据「建议收藏」Request(.NET中的内置对象)总结了对对象中集合的理解,以及向集合中存取数据的规则

大家好,又见面了,我是你们的朋友全栈君。

1. Request对象


Request(.NET中的内置对象)—从客户端接收消息

获取前端的数据;比如form表单中的内容 ,cookis,表头信息,浏览器种类

        Request对象获取数据「建议收藏」


2. 集合(对数据的封装)


对象中的集合是一个什么概念?

个人理解:

虽然取名叫做集合,但是我觉得集合其实就是一个方法,参数是前端数据,返回值是也前端的数据。

那么为什么设置这样子的一个方法呢?我觉得原因是可以将数据作为一个整体进行传递。

提供一个集合可以存储这些数据,那么我们主要传递一个集合就可以在服务器端使用这些数据,非常的方便。

当于对数据的一个封装。
做个比喻,对象相当于一个容器,里面放着几个小容器,每个小容器都存放着他自己的物品。

        Request对象获取数据「建议收藏」


3. 对象向集合存和取数据的规则


向对象中存数据和取数据都有一定的规则。也就是说数据不是乱放的,数据只能够放在他自己的集合中。

1. 存数据:根据不同的提交方式会将数据存放在不同的对象集合中。

  1. post提交的时候存放在form集合
  1. get提交的时候存放在qureystring集合(变量和值都在url中显示出来(将表单数据以字符串的方式附加在网址的后面返回服务器))

这两个是比较常用的,那么为什么会区分出不同的集合呢!原因是他们是适合不同的情况。

    Request对象获取数据「建议收藏」

Form集合中存放的表单值是比较多,比较大的.QueryString正好相反它存的值是比较简单,比较少的.

2. 取数据:不同集合取数据的形式不同。

Request对象取得集合中数据的方式

1. Request(“”)

无论哪种集合都可以通过此方式取得数据

2. Request.集合

只能取得对应集合的数据

哪种比较好呢?这就要讲到下面的一个问题,对象处理集合中数据的顺序


4. 对象处理集合中数据的顺序


当需要调用集合中的数据,对象在集合中找数据是按照一定的顺序。

        Request对象有几个集合来获取客户端提交的数据,一般常用的是QueryString,Form和ServerVariables。上面讲到的两种方式哪一种比较好,我们通过下面一个例子来了解。

如果 Get方式和Post方式提交了同样的一个变量,比如username=pf,那么你用Request(“username”) 

取出来的到底是Get过来的数据还是Post过来的数据呢? 

        这里就提示我们: Request从这几个集合取数据是有顺序的。从前到后 的顺序依次是 QueryString,Form,最后是ServerVariables。Request对象按照这样的顺序依次搜索 这几个集合中的变量,如果有符合的就中止,后面的就不管了。 所以上面的例子Request(“username”)取到的实际是Get方法提交的数据。 

所以为了提高效率,减少无谓的搜索时间,同时也是为了程序的规范,建议大家还是用Request.集合的 
方式更好一点,比如Request.Form(“username”)。 

下面是一个测试例子,提交以后,大家可以直接在地址后面加上 ?username=pf 来测试: 


<% 
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> 


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131308.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月12日 下午3:46
下一篇 2022年6月12日 下午4:00


相关推荐

  • 单片机八路抢答器计设计_基于单片机的三路抢答器设计

    单片机八路抢答器计设计_基于单片机的三路抢答器设计详细代码讨论加我QQ:1271370903一、设计任务与要求一、题目:8路比赛抢答器二、基本要求:利用8051单片机中断系统,制作一个有8个按键的比赛抢答器。在有人按键时进行对应选手显示。三、设计任务:1.设计硬件电路,画出电路原理图;2.画出程序流程图;3.编制程序,写出源程序代码;4.写出5000字的详细说明书,要求字迹工整,原理叙述正确,会计算主要元器件的一些参数,并选择元器件;5.个人总结。四、参考资料:1.教材;2.单片机实验指导书》**二、方案设计**方案:该系

    2022年10月20日
    6
  • Js二代身份证号码正则验证

    Js二代身份证号码正则验证一代身份证号码是十五位,2013年1月1日开始,咱们中国全面停止使用一代身份证了。二代身份证号码:1-6位:表示行政区划的代码。1、2位,所在省(直辖市,自治区)代码;3、4位,所在地级市(自治州)代码;5、6位,所在区(县,自治县,县级市)的代码;7-14位:表示出生年、月、日15-16位:所在地派出所代码17位:性别。奇数(1、3、5、7、9)男性,偶数(2、4、…

    2022年6月27日
    30
  • 2020最新版Net加壳工具

    2020最新版Net加壳工具VirboxProtector发布最新版本Net加壳工具:VirboxProtector2.VirboxProtector为.NETFramework编写的软件做代码保护,防止代码被反编译,防止IL代码在内存被Dump。同时可配合授权产品实现软件的许可管理。加密技术VirboxProtector.NET版通过多种保护方式来防止反编译,加密后可让任何现有工具都无法反编译。JIT加密将.NET所有方法的IL指令经过加密,仅在.NET虚拟机进行J.

    2022年6月27日
    83
  • Vue双向绑定原理(4改)

    Vue双向绑定原理(4改)Vue双向绑定的原理 双向数据绑定是通过数据劫持、结合、发布订阅,的方式来实现的,也就是说数据和视图同步,数据发生变化,视图跟着变化,视图变化,数据也随之发生改变; 使用watch来连接数据与视图,当数据发生变化时,触发通知所有该数据的对象进行更新。这!就是vue的双向绑定原理,你学会了吗?…

    2022年10月18日
    7
  • 网络协议之LLDP

    网络协议之LLDP一、协议简介为什么会出现LLDP?随着网络技术的发展,接入网络的设备的种类越来越多,配置越来越复杂,来自不同设备厂商的设备也往往会增加自己特有的功能,这就导致在一个网络中往往会有很多具有不同特性的、来自不同厂商的设备,为了方便对这样的网络进行管理,就需要使得不同厂商的设备能够在网络中相互发现并交互各自的系统及配置信息。LLDP(LinkLayerDiscoveryProtocol,链路层发…

    2022年5月30日
    147
  • 讯飞星火AI图像生成如何操作

    讯飞星火AI图像生成如何操作

    2026年3月14日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号