我正在开发一个 ASP.net Web 应用程序。我在某些页面上遇到错误,其中出现运行时 JavaScript 错误。
我已将问题缩小到母版页上的单个 ASP 菜单控件。我只用 ASP Menu 控件创建了一个空白页。ASP Menu 控件绑定到Web.sitemap
. 该页面间歇性地给出运行时错误。
但是,如果我刷新页面,错误可能会或可能不会出现在任何给定的页面加载中。有时,它有效;有时,在加载页面或将鼠标悬停在 ASP Menu 控件上时,浏览器会引发运行时错误。
当我在 Visual Studio 中发现错误时,消息是“microsoft jscript runtime error 'sys' is undefined”。当我用谷歌搜索这条消息时,我发现它通常与 AJAX 相关联。但是,页面上唯一的东西是单个 ASP 控件。
除了 .net 框架生成的内容外,页面上绝对没有 Javascript。
什么可能导致这个问题?
更新我发现我的环境实际上具有负载平衡,其中包含三个服务器的 Web 场为 URL 提供服务。当我通过 IP 地址单独访问任何一台服务器上的应用程序时,一切正常。
澄清一下,我知道当用户点击面向公众的 URL 时,它会解析为 xxx1。xxx1 是将请求路由到 xxx2、xxx3 或 xxx4 的交换机的地址。
当我使用面向公众的 URL 时,我发现一些 axd 文件请求会间歇性地重新路由到 Error.aspx!WTF!?!?!?!?!?
我被告知这是一项安全功能的结果,该功能旨在保护我免受跨站点脚本和其他各种不良内容的影响。我能做些什么?
更新取出一些错误页面自动重定向后,我收到更有意义的错误消息:ASP.NET Ajax client-side framework failed to load.