gpt4 book ai didi

asp-classic - 在经典的 ASP 中,有没有办法在应用程序级别处理错误?

转载 作者:行者123 更新时间:2023-12-03 12:27:52 26 4
gpt4 key购买 nike

在经典的 ASP 中,有没有办法在应用程序级别处理错误?

是否有处理经典 ASP 3 中的错误/异常的指南? Server.GetLastError() 不是很多工作......

我正在寻找类似 Application_Error() 的东西在 ASP.Net Global.asax 中找到。

global.asa 中的任何等价物?智能记录错误的类?就像旧的 ASP3 企业库异常处理一样......

嘿,我是一个梦想家!

非常感谢 任何 指针

最佳答案

try:
some code that can raise an error
except:
do error handeling stuff
finally:
clean up, close files etc

可以在 vbscript 中模拟如下:
class CustomErrorHandler
private sub class_terminate
if err.number > 0 then
do error handeling stuff
end if
clean up, close files etc
end sub
end class


with new CustomErrorHandler
some code
...
end with

这是如何运作的?当新创建的实例超出范围时,将调用“class_terminate”方法。这发生在互操作者遇到“end with”语句或调用堆栈因错误而展开时。它不如原生 python 方法漂亮,但效果很好,而且并不难看。

对于顶级错误处理,您可以使用相同的技术。这次不要使用 with 语句,而是创建错误处理程序的全局实例。请注意,提供的 ASPError 对象 server.getLastError() 与 vbscript err 对象不同,并且仅在 IIS 完成其 server.transfer 到 500:100 错误处理程序并返回到您的页面以收集垃圾。示例处理程序:
class cDebugger
public sub do_debug
' print debug data here
end sub
public sub class_terminate
if server.getlasterror().Number <> 0 then
response.clear
call do_debug
end if
end sub
end class

关于asp-classic - 在经典的 ASP 中,有没有办法在应用程序级别处理错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1603786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com