指引网

当前位置: 主页 > 编程开发 > ASP >

ASP 3.0高级编程(十五)

来源:网络 作者:佚名 点击: 时间:2017-06-22 20:50
[摘要] 4.3.4 Server对象的错误处理 ASP没有错误处理机制一直受到批评。 在VBScript中,有一个On Error Resume Next语句,它使脚本解释器忽略运行期错误并继续脚本代码的执行。接着该脚本可以检查
4.3.4 Server对象的错误处理
ASP没有错误处理机制一直受到批评。
在VBScript中,有一个On Error Resume Next语句,它使脚本解释器忽略运行期错误并继续脚本代码的执行。接着该脚本可以检查Err.Number属性的值,判别是否出现了错误。如果出现错误,返回一个非零值。在ASP 3.0中,也可以使用On Error Goto 0“转回到”缺省的错误处理。在ASP 2.0中实际也进行这种处理,但是没有相应文档说明。
在Jscript中,有一个新的错误处理功能:C语言风格的try和catch语句。然而所有的这些错误处理技术都不是由ASP或IIS实现的,而是由ASP使用的脚本引擎实现的。
第7章专门讨论脚本和脚本引擎涉及到的调试和错误处理技术。
同时,ASP和IIS的开发小组已经增加了一个新的功能,用于在ASP网页中进行错误处理。这分为两个部分:IIS错误页面的配置及使用ASP的一个新的方法和对象。
1. Server对象的GetLastError方法
在ASP 3.0中,Server对象有一个名为GetLastError的新方法。与VBScript的Err对象不同,不能为查看是否出现了错误而随时调用该方法,只能在一个ASP定制的错误网页中使用。如果像对Err对象进行操作那样,通过关闭缺省的错误处理(用On Error Resume Next语句)来使用,则GetLastError方法不能访问错误的详细数据。
GetLastError方法要做的事情是提供更多的有关错误源和错误原因的信息。GetLastError方法创建并返回一个对象的引用,该对象是一个名为ASPError的新对象。这个对象具有一系列的属性,这些属性返回有关在GetLastError方法调用之前出现的最新错误的信息。
2. ASPError对象的属性
ASPError对象提供了九个属性说明所出现的错误的性质和错误源,并返回引发错误的实际代码,其属性及说明如表4-4所示:
表4-4 ASPError对象的属性及说明
属 性
说 明
ASPCode
整型。由ASP/IIS产生的错误号,例如0x800A009
ASPDescription
字符串型。如果这个错误是与ASP相关的错误,这个属性是错误的详细说明
Category
字符串型。错误源,即ASP内部脚本语言、或一个对象
Column
整型。产生错误的文件中的字符位置
Description
字符串型。错误的简短说明
File
字符串型。错误出现时正在处理的文件的名称
Line
整型。产生错误的文件中的行号
Number
整型。一个标准的COM错误代码
Source
字符串型。引发错误的行的实际代码
------分隔线----------------------------