- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经开始使用ASPUnit对我的经典ASP代码进行单元测试。一切都很好,我很高兴。唯一的问题是测试生成运行时错误时显示的错误消息。例如,如果未在函数中的某个位置定义变量,则会收到错误消息:
Microsoft VBScript runtime error (500): Variable is undefined
What would be more useful is if it could tell me which file/line the error occurred on. I know that I can get this information from the ASPError object which is returned by the Server.GetLastError() and elsewhere in my project I have a custom 500 error page which makes use of this method to automatically report crashes to Fogbugz. However when I try to access Server.GetLastError anywhere else the information returned is blank. For example, the following code will output zero rather than the expected 4.
<%
Option Explicit
On Error Resume Next
aVariable = "hello"
Dim errObj : Set errObj = Server.GetLastError()
Response.Write errObj.Line
%>
最佳答案
据我所知,直到当前页面完成处理后,才会填充ASPError对象。它只能在500错误页面上使用。因此,理论上讲,如果您在设置500页时遇到错误,则IIS将内部重定向到该页,以使您至少可以记录该错误。然后,只有这样,ASPError对象才可用。我曾经有过使用xmlhttprequest尝试抓取页面的疯狂想法,但是那并不是它的工作方式。
简而言之,您无法做很多事情来获取所需的错误消息详细信息。
使用JScript服务器端,您可以使用try catch,它使您可以访问异常对象,但即使那样对您也不是太好,没有行号或其他任何东西。垃圾。
关于asp-classic - 什么时候可以访问ASPError对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1287243/
我的 中有以下内容web.config 错误处理正在工作,当发生 500 错误时,我被发送到我的 error.asp而不是默认的 500 错误页面。 问题是 ASPError
我是一名优秀的程序员,十分优秀!