ASP内建对象Server

如题所述


通过前九篇的理论和实践,相信大家已经对 ASP
有了系统的了解,虽然至今为止,我们只学了 ASP 的 4
个内建对象,但已经完全能够写出一些实用的小程序了。今天,作者将继续给大家讲解最后一个
ASP 内建对象——Server。
在开始本次课程之前,我仍要在这里回答一些朋友们提出的比较普遍的问题。最近仍有不少朋友来信问我,如何构建服务器端的
Active Server Page
环境。我想可能是我在前几篇中没有讲清楚,因此,在本篇的开头有必要把这个问题详细阐述一遍。
ASP 的应用完全是基于 Microsoft Internet Information Server(简称 IIS)之上的,IIS
有分别用于 Windows NT Server 和 WorkStation 的两个版本中(当然 IIS4.0
也有 Windows98
版,这里暂且不提),其功能几乎完全相同,所不同的只是安装过程。一般来说,我们使用的都是基于
NT 服务器上的 IIS 版本。在 NT Server
的环境中,发布信息、管理站点的工作一般都是通过 IIS
来完成的。通常我们在 NT4.0 版本中运行的是 IIS2.0
版,但它不具有支持 ASP 的功能。ASP 必须在安装完 IIS
后单独安装,安装文件是一个微软发布的 ASP 安装包,大约有 9
兆多,应该可以在微软的网站上下载。当 IIS2.0 中增添了支持 ASP
的功能后,其也就自动升级为 3.0 版本。2.0 和 3.0 对于 WEB
服务器来说,并没有什么大的改动,只是单纯地增加了运行 ASP
的能力。当安装完成后,运行 Internet
服务管理器,你将看到如下画面:
可以到在 IIS3.0 中提供了三种服务:WWW、Gopher、FTP,WWW
服务为客户浏览器提交 WEB 页,并允许客户访问 .asp
文件。当然,你可以直接安装最新的 IIS4.0
版本,作者也建议各位安装此版本,因为它具有更强更高的 WEB
管理机能和安全性。在 IIS4.0 中 IIS
的管理界面发生了根本性的改变,熟悉的 Internet
服务管理器,被取而代之为 Microsoft 管理控制台,简称 MMC。其界面
那么如何安装 I IS4.0 呢 ?在 N T4.0 上 安装 I IS4.0 时
,你的系统中必须已经安装了 N T SP3 , 以及 I nternet Explorer4.01 ,
注意这里的 I nternet Explorer 的 版本必须是 4 .01 , 版本号为 4 .72.3110.8
。 这点很重要,否则你将不能安装 I IS4.0 。
作者为了安装该版本特意花费了一个晚上在微软的站点上升级 I E 版
本。
IIS
支持虚拟目录,通过在“服务器属性”对话框中的“目录”标签可以管理虚拟目录。建立虚拟目录对于管理
WEB
站点具有非常重要的意义。首先,虚拟目录隐藏了有关站点目录结构的重要信息。因为在浏览器中,客户通过选择“查看源代码”,很容易就能获取页面的文件路径信息,如果在
WEB
页中使用物理路径,将暴露有关站点目录的重要信息,这容易导致系统受到攻击。其次,只要两台机器具有相同的虚拟目录,你就可以在不对页面代码做任何改动的情况下,将
WEB 页面从一台机器上移到另一台机器。还有就是,当你将 WEB
页面放置于虚拟目录下后,你可以对目录设置不同的属性,如:Read、Excute、Script。读访问表示将目录内容从
IIS
传递到浏览器。而执行访问则可以使在该目录内执行可执行的文件。当你需要使用
ASP 时,就必须将你存放 .asp 文件的目录设置为“Excute(执行)”。作者建议大家在设置
WEB 站点时,将 HTML 文件同 ASP 文件分开放置在不同的目录下,然后将
HTML 子目录设置为“读”,将 ASP
子目录设置为“执行”,这不仅方便了对 WEB
的管理,而且最重要的提高了 ASP
程序的安全性,防止了程序内容被客户所访问。因为在今年 7
月底的时候 IIS 被一些网络高手发现了一个可怕的 bug,那就是,当你在一个站点的
.asp 文件后加上 ::$DATA 后,客户将能在浏览器中看到该 .asp
文件的所有源代码,这对于一个站点来说是非常可怕的。当然微软已经针对这个
bug,编写了补丁,但是为了彻底杜绝这种可能性的发生,作者还一建议大家不要将
.asp 所在的目录设置为可读。
我想,现在各位应该已经完全了解 ASP
的服务器端设置了,下面我们就进入正题 -- 学习 ASP
的最后一个内建对象 Server。
Server 对象提供对服务器上的方法和属性的访问 ,
其中大多数方法和属性是作为实用程序的功能服务的。有了 Server
对象,你就可以在服务器上启动 ActiveX 对象例程,并使用 Active Server
服务提供象 HTML 和 URL 编码这样的函数。
一、语法
Server.property|method
二、属性
ScriptTimeout
超时值,在脚本运行超过这一时间之后即作超时处理。如下代码指定服务器处理脚本在
100 秒后超时。
% Server.ScriptTimeout=100 %
这里需要注意的是,通过使用元数据库中的 A spScriptTimeout 属
性可以为 W eb 服 务或 W eb 服 务器设置缺省的 S criptTimeout 值 。 S
criptTimeout 属 性不能设置为小于在元数据库中指定的值。例如,如果NumSeconds
设 置为 6 0 , 而元数据库设置包含了默认值 9 0 秒 ,则脚本在 9 0 秒
后超时。
三、方法
1、HTMLEncode 方法
H TMLEncode 方 法允许你对特定的字符串进行 H TML 编 码,虽然 H
TML 可 以显示大部分你写入 A SP 文
件中的文本,但是当你需要实际包含 H TML 标
记中所使用的字符,就会遇到问题。这是因为,当浏览器读到这样的字符串时,会试图进行解释。例如下面的这段文本
这是对 HTMLEncode 方法的测试。 br
这里应该不会另起一行。
会被浏览器显示为 :
这是对 HTMLEncode 方法的测试。
这里应该不会另起一行。
为了避免此类问题,我们就需要使用 S erver 对 象的 H TMLEncode
方 法,采用对应的不由浏览器解释的 H TML Character Code 替 代 H TML 标
记字符。所以,用下面的代码才能显示正确的 H TMLEncode 字
符串,从而在浏览器中按你的需要输出文本。
%
Response.write Server.HTMLEncode(" 这是对 HTMLEncode 方法的测试。
br 这里应该不会另起一行。")%
2、URLEncode 方法
就象 H TMLEncode 方
法使客户可以将字符串翻译成可接受的 H TML 格 式一样, S erver 对
象的 U RLEncode 方 法可以根据 U RL 规
则对字符串进行正确编码,当字符串数据以 U RL 的
形式传递到服务器时,在字符串中不允许出现空格,也不允许出现特殊字符。为此,如果你希望在发送字符串之前进行
U RL 编 码,可以使用 S erver.URLEncode 方 法。
3、MapPath 方法
MapPath
方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。
语法如下 :Server.MapPath(Path)
P ath 指 定要映射物理目录的相对或虚拟路径。若 P ath 以
一个正斜杠 ( /) 或 反斜杠 ( \) 开 始,则 M apPath 方 法返回路径时将 P
ath 视 为完整的虚拟路径。若 P ath 不 是以斜杠开始,则 M apPath 方
法返回同 . Asp 文 件中已有的路径相对的路径。这里需要注意的是 M
apPath 方 法不检查返回的路径是否正确或在服务器上是否存在。
对于下列示例,文件 data.txt 和包含下列脚本的 test.asp
文件都位于目录 C:\Inetpub\Wwwroot\asp 下。C:\Inetpub\Wwwroot
目录被设置为服务器的宿主目录。下列示例使用服务器变量 PATH_INFO
映射当前文件的物理路径。以下脚本
%= server.mappath(Request.ServerVariables("PATH_INFO"))%
输出
c:\inetpub\wwwroot\asp\test.asp
由于下列示例中的路径参数不是以斜杠字符开始的,所以它们被相对映射到当前目录,此处是目录
C:\Inetpub\Wwwroot\asp。以下脚本
%= server.mappath("data.txt")%
%= server.mappath("asp/data.txt")%
输出
c:\inetpub\wwwroot\asp\data.txt
c:\inetpub\wwwroot\asp\asp\data.txt
4、CreateObject 方法
S erver.CreateObject 恐 怕是 A SP 中
最为实用,也是最强劲的功能了。它用于创建已经注册到服务器上的
A ctiveX 组 件实例。这是一个非常重要的特性,因为通过使用 A ctiveX
组 件能够使你轻松地扩展 A ctiveX 的 能力,正是使用了 A ctiveX 组
件,你可以实现至关重要的功能,譬如数据库连接、文件访问、广告显示和其他
V Bscript 不 能提供或不能简单地依靠单独使用 A ctiveX 所
能完成的功能。正是因为这些组件才使得 A SP 具
有了强大的生命力。
其语法如下:
Server.CreateObject("Component Name")
默认情况下,由 S
erver.CreateObject 方 法创建的对象具有页作用域。这就是说,再当前 A
SP 页
处理完成之后,服务器将自动破坏这些对象。如果要创建有会话或应用程序作用域的对象,可以使用
OBJECT 标记并设置 SESSION 或 APPLICATION 的 SCOPE
属性,也可以在对话及应用程序变量中存储该对象。如下例程 :
% Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%
这里需要注意的是,不能创建与内建对象同名的对象实例,否则,如下列脚本将返回错误。
% Set Response = Server.CreateObject("Response") %
至今为止,我们已经学习完了 A SP 所
有的内建对象,不知大家是不是很兴奋?其实 A SP 是
很简单的,只要大家不断的实践,相信一段时间后都不难成为 A SP 的
高手。从下一篇起作者将开始介绍 A SP 内 建 A ctiveX 组 件,这也是 A
SP 运 用中非常重要和实用的一部分。敬请关注。
温馨提示:内容为网友见解,仅供参考
无其他回答

ASP内建对象Server
的最后一个内建对象 Server。Server 对象提供对服务器上的方法和属性的访问 ,其中大多数方法和属性是作为实用程序的功能服务的。有了 Server对象,你就可以在服务器上启动 ActiveX 对象例程,并使用 Active Server服务提供象 HTML 和 URL 编码这样的函数。一、语法Server.property|method二、属性ScriptTimeout超时值,在...

ASP的内置对象有几个,分别用来作什么?
ASP的内置对象共有7个,它们分别是:Request、Response、Server、Session、Application、ObjectContext和Global。Request对象:用于获取客户端发送的请求信息,如表单数据、查询字符串等。例如,当用户在网页上填写表单并提交后,Request对象可以帮助服务器获取这些数据并进行处理。Response对象:用于向客户端发送响应...

6. 列举出ASP常用的5个内置对象,说明其作用。
五大对象分别是Response,Request,Session,Application和Server。1、Application对象 可以使用Application对象使给定应用程序的所有用户共享信息。2、Request对象 可以使用Request对象访问任何用HTTP请求传递的信息,包括从HTML表格用POST方法或GET方法传递的参数、cookie和用户认证。3、Response对象 可以使用Response对象...

ASP 提供的六个内建对象是什么?
Active Server Pages 提供内建对象,这些对象使用户更容易收集通过浏览器请 求发送的信息、响应浏览器以及存储用户信息(如用户首选项)。本文简要说明 每一个对象。有关每个对象的详细信息,请参阅 内建对象参考。Application 对象 可以使用 Application 对象使给定应用程序的所有用户共享信息。Request 对象 ...

ASP的六大内部对象
1.Request对象 Request对象把客户信息保存在几个集合中,供ASP应用使用。2.Response对象 用来控制向客户返回的HTML的内容,有若干属性和方法。3.Application对象 Active Server应用程序是虚拟目录及其子目录下的所有文件,即一个WEB。可以使用Application对象在应用软件的所有用户中共享信息,并可以在服务器运行...

Server.CreateObject("Microsoft.XMLDOM")和new ActiveXObject("Micro...
Server.CreateObject()中的“Server”是ASP内置对象,只能在ASP中使用。参考Windows脚本技术文档可知:new ActiveXObject() 是JScript提供的用于“创建Automation对象”的方法,相当于VBS的“CreateObject()函数”。因此只要支持JScript或VBS的环境即可使用new ActiveXObject()或CreateObject();以下内容摘自IIS5.1...

asp的几个对象是什么?
RecordSet对象存放从数据库中调用的数据记录;Field对象和Field集合提供对RecordSet中当前记录的各个字段进行访问的功能;Property对象和Properties集合提供有关信息,供Connection、Command、RecordSet、Field对象使用;Error对象和Errors集合提供访问数据库时的错误信息。另外,ASP的六大内部对象 1 Server对象 2 ...

ASP常用内置组件有多少种
ASP编程人员总是要使用到组件---其实就是以下5个ASP内建对象:Response, Request, Session, Application 和 Server,它们存在与ASP.DLL组件文件中,是WEB动态应用程序开发的基础。利用它们,花费很少的工作量就能完成一定的任务 ASP中实用的广告交替组件 你是不是经常在网上看到一些公司的广告,并且他们...

ASP内建对象Application 和 Session
在ASP 的内建对象中除了用于发送、接收和处理数据的对象外,还有一些非常实用的代表 Active Server 应用程序和单个用户信息的对象。让我们先来看看 Application 对象。在同一虚拟目录及其子目录下的所有 .asp 文件构成了 ASP 应用程序。我们非但可以使用 Application 对象,在给定的应用程序的所有用户之间共享信息,并在...

Server 对象, ASP 0177 (0x800401F3)
这个页面用到了一个ASP组件(dll文件)。但是你的电脑没有注册过这个组件 如果你没有这个组件的话,建议你问程序提供者索求 如果有这个文件,执行下面操作:将组件(假设为test.dll)拷贝到 系统盘system32文件夹下 开始-运行 输入:regsvr32.exe test.dll 就可以了 KenZhouObject = Server.CreateObject...

相似回答
大家正在搜