Request 对象
Request 对象在 HTTP 请求期间,检索客户端浏览器传递给服务器的值 。
语法
Request[.collection|property|method](variable)
集合
ClientCertificate | 存储在发送到 HTTP 请求中客户端证书中的字段值。 |
Cookies | HTTP 请求中被发送的 cookie 的值。 |
Form | HTTP 请求正文中表格元素的值。 |
QueryString | HTTP 中查询字符串中变量的值。 |
ServerVariables | 预定的环境变量的值。 |
属性
TotalBytes | 只允许读。指定客户端在请求正文中发送的字节总数。 |
方法
BinaryRead | 检索从客户端发送到服务器作为 POST 请求的一部分的数据。 |
变量参数是一些字符串,这些字符串指定要从集合中检索的项目,或作为方法或属性的输入。有关 variable 参数的详细信息,请参阅各集合说明。
注释
如果指定的变量不是上述的五个集合中的一个,Request 对象返回 EMPTY。
可以通过调用 Request(variable) 直接使用所有的变量,而不需要集合的名称。正因为这样,Web 服务器可以按照下面的顺序搜索集合。
- QueryString
- Form
- Cookies
- ClientCertificate
- ServerVariables
如果同名的变量出现在多个集合中,Request 对象返回遇到的第一个实例。
我们建议在涉及 ServerVariables 集合的成员时使用全名。例如,不用 Request.(AUTH_USER) 而用Request.ServerVariables(AUTH_USER) 。
QueryString
QueryString 集合检索 HTTP 查询字符串中变量的值。HTTP 查询字符串由问号 (?) 后的值指定。几个不同的进程都可以生成查询字符串。如,anchor 标记
<A HREF= "example?string=this is a sample">string sample</A>
生成值为 "this is a sample" 的变量名字符串。通过发送表格或由用户在其浏览器的地址框中键入查询也可以生成查询字符串。
语法
Request.QueryString(variable)[(index)|.Count]
参数
-
variable
-
在 HTTP 查询字符串中指定要检索的变量名。
index
- 这是一个可选参数,可以用来检索 variable 的多个值中的某一个值。这可以是从 1 到 Request.QueryString( variable ).Count 之间的任何整数。
注释
QueryString 集合是在 ServerVariables 集合中 QUERY_STRING 变量的分析版本 。它可以让您以名称检索 QUERY_STRING 变量。Request.QueryString (参数) 的值是出现在 QUERY_STRING 中所有参数 的值的数组。通过调用 Request.QueryString(parameter).Count 可以确定参数有多少个值。如果变量未关联多个数据集,则计数为 1。如果找不到变量,计数为 0。
要在多个数据集合的一个中引用 QueryString 变量,请指定 index 的值。index 参数可以是 1 到 Request.QueryString(variable).Count 中任意值。如果没有指定 index 的值,引用多个 QueryString 变量中的某个变量时,返回的数据是逗号分隔的字符串。
在 Request.QueryString 中使用参数时,服务器分析发送给请求的参数,并返回指定的数据。如果应用程序需要未分析的 QueryString 数据,可以通过调用不带参数的 Request.QueryString 检索到这个数据。
可以使用复述符在查询字符串中循环遍历所有的数据值。例如,如果发送以下的请求
http://NAMES.ASP?Q=Fred&Q=Sally
而且 Names.asp
包含下面的脚本,
---NAMES.ASP--- <% For Each item In Request.QueryString("Q") Response.Write item & "<BR>" Next %>
Names.asp
将显示如下。
Fred Sally
上述脚本也可以用 Count 来写。
<% For I = 1 To Request.QueryString("Q").Count Response.Write Request.QueryString("Q")(I) & "<BR>" Next %>
示例
客户端请求
/scripts/directory-lookup.asp?name=fred&age=22
results in the following QUERY_STRING value.
name=fred&age=22.
QueryString 集合将包含 name
和 age
两个成员。那么,您就可以使用下面的脚本。
Welcome, <%= Request.QueryString("name") %>. Your age is <%= Request.QueryString("age") %>.
将输出
Welcome, Fred. Your age is 22.
如果使用下面的脚本
The unparsed query string is: <%=Request.QueryString %>
将输出
The unparsed query string is: name=fred&age=22