当前位置:文档之家› ASP动态网页制作教程 很有用

ASP动态网页制作教程 很有用

ASP动态网页制作教程
第6章 ASP内置对象

本章介绍ASP的内置对象,主要内容包 括Request对象、Response对象、 Application对象、Session对象、Server 对象和ObjectContext对象。通过本章的学 习,读者应了解以上每个对象的主要用途, 并掌握每个对象在程序中的相关应用。读 者还需进一步理解ASP如何通过调用其内置 对象来实现基本操作。


读取客户端的验证字段。 返回客户端发出请求的字节 数量。 以二进制方式来读取客户端 使用post方法所传递的数 据,并返回一个变量数组 (Variant Array)。
BinaryRead方法
6.2.1

获取表单数据
表单是标准HTML文件的一部分,用户 可以利用表单中的文本框、复选框、单选 按钮、列表框等控件为服务器端的应用提 供初始数据,用户通过单击表单中的命令 按钮提交输入的数据。
• Request对象中有5个集合可以用来完成客户端对 ASP服务器的请求的响应。例如,要在Request对 象的Form中取得名为“姓名”的信息,可以使用 下述赋值命令: • name=Request.Form("姓名") • 也可以不指定集合名(Form),直接使用命 令: • name=Request("姓名") • 程序会以QueryString、Form、Cookies和 ServerVariables的顺序搜索所有集合,当发现一 个匹配的变量时,就认定它是要引用的成员。当 然,编程实践中,为避免不同集合中同名变量引 用的二义性,最好显式地指定集合。
Request.BinaryRead方法举例
• 上传图像
6.3 Response响应对象
• Response对象是ASP内置对象中直接对 客户端发送数据的对象。Request请求对象 与Response响应对象构成了客户请求/服务 器响应的模式。Request对象用于发送客户 端提交的数据。Response对象用于动态响 应客户端请求,并将动态生成的响应结果 返回给客户端浏览器。

【例6-3】获取以GET方式传递的表单 数据。
图6-5
以GET方式传递数据
图6-6
读取数据
通过地址栏传递参数
2.使用超链接传递的参数
• 在程序中,可以直接利用HTML的超链接 标记<A>传递参数。传递的参数写在“?” 符号的后面,如果有多个参数则使用“&” 作为分隔符。使用Request对象的 QueryString数据集合可以取得所传递的参 数值。 (源码网整理,)
读取附于URL地址后的字符串的值,在页面 的参数传递中使用或Get提交的表单数据。
读取存放在客户端浏览器Cookie的内容。 读取客户端请求发出的HTTP报头值以及Web 服务器的环境变量值。
Cookies数据集合
ServerVariables数据集合
续表
成 员 ClientCertificate 数据集合 TotalBytes属性
METBASE路径对应的实际路径 使用基本认证时,Client端输入的认证密码 Client端的认证方式 认证时使用的用户名 Client端证书ID
续表
服务器环境变量 CERT_FLAGS CERT_ISSUWE CERT_KEYSIZE 描 述
Client端证书是否存在,存在则返回为1 Client端证书发行者信息 连接SSL时,Key的Bit数
CERT_SECRETKEYSIZE
CERT_SERIALNUMBER CERT_SERVER_ISSUER
Server证书的Bit数
Client端证书的序列号 Server证书发行者信息
CERT_SERVER_SUBJECT
CERT_SUBJECT
Server证书内容
Client证书内容
续表
服务器环境变量 CONTENT_LENGTH CONTENT_TYPE GATEWAY_INTERFACE 描 Client送出内容的长度 Client送出内容的类型 Server使用CGI规格版本 述
(1)Request对象的TotalBytes属性 • Request对象提供一个TotalBytes属性, 为只读属性,用于取得从客户端发送到服 务器端的所有数据字节数。 • 语法: • Counter=Request.TotalBytes
(2)Request对象的BinaryRead方法 • Request对象提供一个BinaryRead方法, 用于以二进制码方式读取客户端使用POST 方式所传递的数据。 • 语法: • Variant数组=Request.BinaryRead(Count)
• (源码网整理:)
6.2 Request请求对象
• 在客户端/服务器结构中,当客户端 Web页面向网站服务器端传递信息时,ASP 通过Request对象能够获取客户端提交的全 部信息。

信息包括客户端用户的HTTP变量、在 网站服务器端存放的客户端浏览器的 Cookie数据、附于URL之后的字符串信息、 页面中表单传送的数据以及客户端证书等。
• •
Request对象的语法如下: Request[.collection | property | method](variable)
表6-1
成 Form数据集合 员
Request对象的成员
描 述
读取HTML表单域控件的值,即读取客户端 浏览器上以Post方法提交的表单数据。
QueryString数据集合
6.2.2 Request.QueryString
• 通过Request对象的QueryString集合 可以读取地址栏后字符串参数或读取Get方 式提交的表单。 • 1. 利用Querystring集合读取表单的内容 • 2. 利用Querystring集合读取HTTP查询字 符串中的参数

QueryString数据集合可以利用 QueryString环境变量来检索HTTP查询字符 串中变量的值。
取得Server端口号 Server端口是否安全,1表示安全,0表示不安 全 取得通信协议的名称及编号 取得Server端软件的名称及版本 取得URL信息

【例6-5】获得服务器端环境变量。
图6-9
获得服务器端方式读取数据
结合使用Request对象的TotalBytes属 性和BinaryRead方法,可以以二进制码方 式读取使用POST方式发送的表单数据。

【例6-4】使用超链接传递参数。
图6-7
建立超链接
图6-8
读取参数
Request.QueryString的应用
• 如果有时候要把多个ASP网页的处理程序写 在一个页面,可以用Request.QueryString 集合进行区分
6.2.3 获得服务器端环境变量
• 通过Request对象的ServerVariables 数据集合可以取得服务器端的环境变量信 息。

【例6-1】通过Form集合获取表单数据
图6-1
输入数据
图6-2
读取数据
Request对象
• • • • • Form集合 QueryString集合 ServerVariables集合 TotalBytes属性 BinaryRead方法
Request.Form举例
• 制作网上考试系统
• 根据输入的行和列动态生成表格 • 文章发布系统
读取表单数据的对应关系
表单提交方式
读取方式
Method = Post
Method = Get
Request.Form()
Request.QueryString()

HTTP查询字符串中的变量可以直接定 义在超链接的URL地址中“?”字符之后, 如?name=wang。传 递多个参数变量时,用“&”符号作为参数 间的分隔符,如 ?name=wang&age=2 6。
HTTP_<headname>
HTTPS HTTPS_KEYSIZE
保存在头部的其他信息
使用SSL提出要求时,该值为ON,否则为OFF 使用SSL连接时Key的Bit数
HTTPS_SECRETKEYSIZE
HTTPS_SERVER_ISSUER HTTPS_SERVER_SUBJECT
Server证书密码的Bit数

这些信息包括:发出请求的浏览器信 息、构成请求的HTTP方法、用户登录 Windows NT的账号、客户端的IP地址等。 服务器端环境变量对ASP程序有很大帮助, 使程序能够根据不同情况进行判断,提高 了程序的健壮性。

服务器环境变量是只读变量,只能查 阅,不能设置。 • 语法: • Request.ServerVariables(server_enviro nment_variable) • server_environment_variable:服务器环 境变量。
Server证书发行者信息 Server证书内容
续表
服务器环境变量 INSTANCE_ID INSTANCE_META_PATH LOCAL_ADDR 描 述
取得所属(metabase中)Web服务进程的ID值 取得要求的IIS服务进程的META BASE PATH 取得要求的SERVER的地址
LOGON_USER

在含有ASP动态代码的Web页面中,可 以使用Request对象的Form集合收集来自客 户端的以表单形式发送到服务器的信息。
• 语法: • Request.Form(element)[(index)|.Count] • element:指定集合要检索的表单元素的名 称。

在表单中传递数据的方法有两种: POST方法和GET方法。当使用POST方法将 HTML表单提交给服务器时,表单元素可以 作为Form集合的成员来检索,即使用 Request对象的Form集合来获得表单中传递 的数据,传递大量数据一般使用POST方法; 使用GET方法传递数据时,通过Request对 象的QueryString集合来获得数据。
相关主题