通过 PageMethods 和 AJAX 调用将 JQuery 脚本错误记录到 ASP.NET 服务器

Posted

技术标签:

【中文标题】通过 PageMethods 和 AJAX 调用将 JQuery 脚本错误记录到 ASP.NET 服务器【英文标题】:Logging JQuery script errors to ASP.NET server via PageMethods & AJAX Calls 【发布时间】:2011-05-31 10:30:44 【问题描述】:

我正在开发一个在客户端使用 JQuery 并在服务器上使用 ASP.NET/C# 和 PageMethods 的网站。

我正在寻找一些关于在服务器上记录 JavaScript 错误的建议。

我的计划是在我的基本页面中添加一些通用的 PageMethods,如果在我的 JQuery 代码中的 try/catch 块中发生错误,我将调用 PageMethod 并传递函数名称、用户上下文和其他相关参数(如 JSON 字符串、变量等)。

显然,我只能对 try/catch 块中捕获的错误执行此操作。

here 提出了一个类似的问题,但那是 6 个多月前的事了。

我正在考虑服务器上的 Log4Net 和本机 .NET 日志记录功能。

【问题讨论】:

【参考方案1】:

我不太喜欢使用 log4net 和其他工具,因为您可以使用简单的方法(例如对服务器的异步调用)来做到这一点。

我建议你创建一个处理程序来处理 JS 中的所有错误,并使用 jquery.ajax () (http://api.jquery.com/jQuery.ajax/) 和在您处理这些错误的服务器并使用服务器上的错误记录器进行处理。

听起来不错?

如果突然出现任何错误,您应该避免学习新工具并增加复杂性,因为您现在依赖于对该工具的支持。

【讨论】:

我在其他关于 Log4Net 的线程上听到了很多类似的 cmets。感觉是,虽然这是一个很好的日志记录平台,但它并没有真正提供比原生 .NET 日志记录功能强大几个数量级的功能。 我会接受这个答案,因为我的联合创始人最终根据他阅读的一些文章编写了自己的超级简单的日志记录类。和你一样,当 .NET 中已经存在可以使用大部分相同功能的库时,他不想依赖繁重的库。

以上是关于通过 PageMethods 和 AJAX 调用将 JQuery 脚本错误记录到 ASP.NET 服务器的主要内容,如果未能解决你的问题,请参考以下文章

有啥方法可以进行同步 PageMethods 调用?

将Javascript PageMethods“返回值”存储到变量中

从具有多个参数C#的PageMethods返回值后不调用成功函数

asp.net ajax客户端框架如何调用Page Method

将 ASP.NET PageMethods 与 JQuery 数据表一起使用?

来自 javascript PageMethods 的自定义 C# 数据传输对象