石家庄建站平台

十年经验 优惠价格 贴心服务

服务热线 15383239821

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

发布时间:2013-10-30    来源:

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")这样的写法。
 
 
Request.Form:获取以POST方式提交的数据(接收Form提交来的数据);Request.QueryString:获取地址栏参数(以GET方式提交的数据) Request:包含以上两种方式(
优先获取GET方式提交的数据),它会在QueryString、Form、ServerVariable中都搜寻一遍。
 
      
而且有时候也会得到不同的结果。如果你仅仅是需要Form中的一个数据,但是你使用了Request而不是Request.Form,那么程序将在QueryString、ServerVariable中也搜寻一遍。如果正好你的QueryString或者ServerVariable里面也有同名的项,你得到的就不是你原本想要的值了。
 
  
 Request.ServerVariables中的各种参数
 
  
Request.ServerVariables("Url") 
返回服务器地址
 
Request.ServerVariables("Path_Info") 
客户端提供的路径信息
 
Request.ServerVariables("Appl_Physical_Path") 
与应用程序元数据库路径相应的物理路径
 
Request.ServerVariables("Path_Translated") 
通过由虚拟至物理的映射后得到的路径
 
Request.ServerVariables("Script_Name") 
执行脚本的名称
 
Request.ServerVariables("Query_String") 
查询字符串內容
 
Request.ServerVariables("Http_Referer") 
请求的字符串內容
 
Request.ServerVariables("Server_Port") 
接受请求的服务器端口号
 
Request.ServerVariables("Remote_Addr") 
发出请求的远程主机的
IP
地址
 
Request.ServerVariables("Remote_Host") 
发出请求的远程主机名称
 
Request.ServerVariables("Local_Addr") 
返回接受请求的服务器地址
 
Request.ServerVariables("Http_Host") 
返回服务器地址
 
Request.ServerVariables("Server_Name") 
服务器的主机名、
DNS
地址或
IP
地址
 
Request.ServerVariables("Request_Method") 
提出请求的方法比如
GET

HEAD

POST
等等
 
Request.ServerVariables("Server_Port_Secure") 
如果接受请求的服务器端口为安全端口时,则为
1
,否则为
0
Request.ServerVariables("Server_Protocol")
服务器使用的协议的名称和版本
 
Request.ServerVariables("Server_Software")
应答请求并运行网关的服务器软件的名称和版本
 
Request.ServerVariables("All_Http")
客户端发送的所有
HTTP
标头,前缀
HTTP_ 
Request.ServerVariables("All_Raw") 
客户端发送的所有
HTTP
标头
,
其结果和客户端发送时一样,没有前缀
HTTP_
Request.ServerVariables("Appl_MD_Path")
应用程序的元数据库路径
 
Request.ServerVariables("Content_Length")
客户端发出內容的长度
 
Request.ServerVariables("Https") 
如果请求穿过安全通道(
SSL
),则返回
ON
如果请求来自非安全通道,则返回
OFF 
Request.ServerVariables("Instance_ID")
IIS
实例的
ID

 
Request.ServerVariables("Instance_Meta_Path")
响应请求的
IIS
实例的元数据库路径
 
Request.ServerVariables("Http_Accept_Encoding")
返回內容如:
gzip,deflate 
Request.ServerVariables("Http_Accept_Language")
返回內容如:
en-us 
Request.ServerVariables("Http_Connection")
返回內容:
Keep-Alive 
Request.ServerVariables("Http_Cookie")
返回內容如:
nVisiT% 
2DYum=125;ASPSESSIONIDCARTQTRA=FDOBFFABJGOECBBKHKGP
FIJI;ASPSESSIONIDCAQQTSRB=LKJJPLABABILLPCOGJGAMKAM;ASP
SESSIONIDACRRSSRA=DK
HHHFBBJOJCCONPPHLKGHPB 
Request.ServerVariables("Http_User_Agent") 
返回內容:
Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;SV1)
Request.ServerVariables("Https_Keysize")
安全套接字层连接关键字的位数,如
128 
Request.ServerVariables("Https_Secretkeysize")
服务器验证私人关键字的位数如
1024 
Request.ServerVariables("Https_Server_Issuer")
服务器证书的发行者字段
 
Request.ServerVariables("Https_Server_Subject")
服务器证书的主题字段
 
Request.ServerVariables("Auth_Password") 
当使用基本验证模式时,客户在密码对话框中输入的密码
 
Request.ServerVariables("Auth_Type") 
是用户访问受保护的脚本时,服务器用於检验用户的验证方法
 
Request.ServerVariables("Auth_User")
代证的用户名
 
Request.ServerVariables("Cert_Cookie")
唯一的客户证书
ID

 
Request.ServerVariables("Cert_Flag") 
客户证书标誌,如有客户端证书,则
bit0

0
如果客户端证书验证无效,
bit1
被设置为

Request.ServerVariables("Cert_Issuer")
用户证书中的发行者字段
 
Request.ServerVariables("Cert_Keysize")
安全套接字层连接关键字的位数,如
128 
Request.ServerVariables("Cert_Secretkeysize")
服务器验证私人关键字的位数如
1024 
Request.ServerVariables("Cert_Serialnumber")
客户证书的序列号字段
 
Request.ServerVariables("Cert_Server_Issuer")
服务器证书的发行者字段
 
Request.ServerVariables("Cert_Server_Subject")
服务器证书的主题字段
 
Request.ServerVariables("Cert_Subject")
客户端证书的主题字段
 
Request.ServerVa

还没开展互联网业务? 马上开始

关注多多建站公众号
扫码加好友