我正在开发基于asp的(不是.net)网站,该网站大约有400多页......现在,整个网站都存在ASP和VBScript错误,例如:
Microsoft VBScript运行时错误'800a000d'
类型不匹配:'Cdate'
/MySite/page.asp,第71行
(当我将字符输入'date'字段时发生了上述情况。在这种情况下我知道它的VBScript,但是我得到了很多。)
现在,我知道我可以通过客户端验证(例如jQuery)来避免这种情况,但是当这样的事情发生时,我如何编写默认的“错误”页面?您点击了错误,而不是向您展示上述内容,您会被重定向到通用的“错误”页面?
我查了一些,发现ASP'On Error Resume Next'的事情,但我没有找到任何可行的例子。每个都是针对特定错误(例如将5除以0)定制的,我真的不想编写类似400+的潜在错误消息。
答案 0 :(得分:0)
您可以在页面顶部添加以下代码。
<% on error resume next%>
.
..
....
(其他代码在上面而不是点(。))
然后添加
<% if err then
response.redirect("err.page?code="&err.code)
end if%>
您可以根据错误编号在通用错误页面中定义错误消息。
答案 1 :(得分:0)
您可以通过IIS创建自定义错误页面。我不确定你正在运行什么版本等等 - 但这应该给你一个很好的跳跃点。 http://support.microsoft.com/kb/224070
答案 2 :(得分:0)
如果你向客户方提出同样的问题。您可以尝试捕获代码块以寻找可能抛出的代码时钟。
对于考试
<script language="text/javascript">
try
{
//Code that will can throw error is here.
}
catch(err)
{
document.href.location="genericerrorpage.asp?err=" + err.code;
}
}
</script>