目前的 ASP 版本总共提供了六个内建对象之一:
Request
可以使用 Request 对象访问任何基于 HTTP 请求传递的所有信息,包括从 HTML 表格用 POST方法或GET方法传递的参数、cookie 和用户认证。Request 对象使您能够访问客户端发送给服务器的二进制数据。
语法:Request[. 集合 | 属性 | 方法 ]( 变量 )
常用的对象语法进行分析
1、ServerVariables:收集HTTP 的标题信息
在浏览器中浏览网页的时候使用的传输协议是 HTTP,在 HTTP 的标题文件中会记录一些客户端的信息,如:客户的 IP 地址等等,有时服务器端需要根据不同的客户端信息做出不同的反映,这时候就需要用 ServerVariables 集合获取所需信息。
语法
Request.ServerVariables ( 服务器环境变量 )
由于服务器环境变量较多,仅将一些常用的变量在下表中列出 :
HTTP_ USERAGENT
举例:< TABLE>
< TR>< TD>< B>Server Variable< /B>< /TD>
< TD>< B>Value< /B>< /TD>< /TR>
< % For Each name In Request.ServerVariables %>
< TR>< TD> < %= name %> < /TD>< TD>
< %= Request.ServerVariables(name) %> < /TD>< /TR>
< /TABLE>
< % Next %>
2、Cookies
Request 提供的 Cookies 集合允许用户检索在 HTTP 请求中发送的 cookie 的值。这项功能经常被使用在要求认证客户密码以及电子公告板、WEB 聊天室等 ASP 程序中。
Request.Cookies(cookie)[(key)|.attribute]
cookie 指定要检索其值的 cookie。
key 可选参数,用于从 cookie 字典中检索子关键字的值。
attribe 指定 cookie 自身的有关信息。如:HasKeys 只读,指定 cookie 是否包含关键字。
可以通过包含一个 key 值来访问 cookie 字典的子关键字。如果访问 cookie 字典时未指定 key,则所有关键字都会作为单个查询字符串返回。例如,如果 MyCookie 有两个关键字 , First 和 Second,而在调用 Request.Cookies 时并未指定其中任何一个关键字,那么将返回下列字符串。
First=firstkeyvalue&Second=secondkeyvalue
如果客户端浏览器发送了两个同名的 cookie,那么 Request.Cookie 将返回其中路径结构较深的一个。例如,如果有两个同名的的 cookie,但其中一个的路径属性为 /www/ 而另一个为 /www/home/,客户端浏览器同时将两个 cookie 都发送到 /www/home/ 目录中,那么 Request.Cookie 将只返回第二个 cookie。
要确定某个 cookie 是不是 cookie 字典(cookie 有否有关键字),可使用下列脚本。
< %= Request.Cookies("myCookie").HasKeys %>
3、Form
Form 集合通过使用 POST 方法的表格检索邮送到 HTTP 请求正文中的表格元素的值。
Request.Form(element)[(index)|.Count]
element 指定集合要检索的表格元素的名称。
index 可选参数,使用该参数可以访问某参数中多个值中的一个。它可以是1到 Request.Form(parameter).Count 之间的任意整数。
Count 集合中元素的个数
4、QueryString
QueryString 集合检索 HTTP 查询字符串中变量的值 ,HTTP 查询字符串由问号 (?) 后的值指定。
Request.QueryString(variable)[(index)|.Count]
QueryString 集合可以让您以名称检索 QUERY_STRING 变量。Request.QueryString( 参数 ) 的值是出现在 QUERY_STRING 中所有参数的值的数组。通过调用Request.QueryString(parameter).Count 可以确定参数有多少个值。
例如:
< %
For Each i In Request.querystring("hobby")
Response.Write i & "< BR>"
Next
%>
可以使用 Request 对象访问任何基于 HTTP 请求传递的所有信息,包括从 HTML 表格用 POST方法或GET方法传递的参数、cookie 和用户认证。Request 对象使您能够访问客户端发送给服务器的二进制数据。
语法:Request[. 集合 | 属性 | 方法 ]( 变量 )
常用的对象语法进行分析
1、ServerVariables:收集HTTP 的标题信息
在浏览器中浏览网页的时候使用的传输协议是 HTTP,在 HTTP 的标题文件中会记录一些客户端的信息,如:客户的 IP 地址等等,有时服务器端需要根据不同的客户端信息做出不同的反映,这时候就需要用 ServerVariables 集合获取所需信息。
语法
Request.ServerVariables ( 服务器环境变量 )
由于服务器环境变量较多,仅将一些常用的变量在下表中列出 :
ALL_HTTP | 客户端发送的所有 HTTP 标题文件。 |
CONTENT_LENGTH | 客户端发出内容的长度。 |
CONTENT_TYPE | 内容的数据类型。如:“text/html”。同附加信息 的查询一起使用,如 HTTP 查询 GET、POST 和 PUT。 |
LOCAL_ADDR | 返回接受请求的服务器地址。如果在绑定多 个 IP 地址的多宿主机器上查找请求所使用的地址时,这条变量非常重要。 |
LOGON_USER | 用户登录 Windows NT 的帐号。 |
QUERY_STRING | 查询 HTTP 请求中问号(?)后的信息。 |
REMOTE_ADDR | 发出请求的远程主机 (client) 的 IP 地址。 |
REMOTE_HOST | 发出请求的主机 (client) 名称。如果服务器无此 信息,它将设置为空的 MOTE_ADDR 变量。 |
REQUEST_METHOD | 该方法用于提出请求。相当于用于 HTTP 的 GET、HEAD、POST等 等。 |
SERVER_NAME | 出现在自引用 URL 中的服务器主机名、DNS 化名 或 IP 地址。 |
SERVER_PORT | 发送请求的端口号。 |
举例:< TABLE>
< TR>< TD>< B>Server Variable< /B>< /TD>
< TD>< B>Value< /B>< /TD>< /TR>
< % For Each name In Request.ServerVariables %>
< TR>< TD> < %= name %> < /TD>< TD>
< %= Request.ServerVariables(name) %> < /TD>< /TR>
< /TABLE>
< % Next %>
2、Cookies
Request 提供的 Cookies 集合允许用户检索在 HTTP 请求中发送的 cookie 的值。这项功能经常被使用在要求认证客户密码以及电子公告板、WEB 聊天室等 ASP 程序中。
Request.Cookies(cookie)[(key)|.attribute]
cookie 指定要检索其值的 cookie。
key 可选参数,用于从 cookie 字典中检索子关键字的值。
attribe 指定 cookie 自身的有关信息。如:HasKeys 只读,指定 cookie 是否包含关键字。
可以通过包含一个 key 值来访问 cookie 字典的子关键字。如果访问 cookie 字典时未指定 key,则所有关键字都会作为单个查询字符串返回。例如,如果 MyCookie 有两个关键字 , First 和 Second,而在调用 Request.Cookies 时并未指定其中任何一个关键字,那么将返回下列字符串。
First=firstkeyvalue&Second=secondkeyvalue
如果客户端浏览器发送了两个同名的 cookie,那么 Request.Cookie 将返回其中路径结构较深的一个。例如,如果有两个同名的的 cookie,但其中一个的路径属性为 /www/ 而另一个为 /www/home/,客户端浏览器同时将两个 cookie 都发送到 /www/home/ 目录中,那么 Request.Cookie 将只返回第二个 cookie。
要确定某个 cookie 是不是 cookie 字典(cookie 有否有关键字),可使用下列脚本。
< %= Request.Cookies("myCookie").HasKeys %>
3、Form
Form 集合通过使用 POST 方法的表格检索邮送到 HTTP 请求正文中的表格元素的值。
Request.Form(element)[(index)|.Count]
element 指定集合要检索的表格元素的名称。
index 可选参数,使用该参数可以访问某参数中多个值中的一个。它可以是1到 Request.Form(parameter).Count 之间的任意整数。
Count 集合中元素的个数
4、QueryString
QueryString 集合检索 HTTP 查询字符串中变量的值 ,HTTP 查询字符串由问号 (?) 后的值指定。
Request.QueryString(variable)[(index)|.Count]
QueryString 集合可以让您以名称检索 QUERY_STRING 变量。Request.QueryString( 参数 ) 的值是出现在 QUERY_STRING 中所有参数的值的数组。通过调用Request.QueryString(parameter).Count 可以确定参数有多少个值。
例如:
< %
For Each i In Request.querystring("hobby")
Response.Write i & "< BR>"
Next
%>