我想知道是否有人有全局处理JavaScript错误的经验,并将它们从客户端浏览器发送到服务器.
我认为我的观点很清楚,我想知道客户端发生的每个异常,错误,编译错误等,并将它们发送到服务器进行报告.
我主要使用MooTools和head.js(对于JS方面)和Django用于服务器端.
捕获JavaScript中抛出的所有异常的最佳技术是什么?
显然,最好的技巧是使用try ... catch.但是使用异步回调等等,这可能会变得棘手.
我知道IE和Gecko浏览器支持window.onerror,但Opera和Safari呢?
以下是一些测试用例,我希望有一个中央异常处理解决方案:
// ErrorHandler-Test1
var test = null;
test.arg = 5;
// ErrorHandler-Test2
throw (new Error("Hello"));
// ErrorHandler-Test3
throw "Hello again";
// ErrorHandler-Test4
throw {
myMessage: "stuff",
customProperty: 5,
anArray: [1, 2, 3]
};
// ErrorHandler-Test5
try {
var test2 = null;
test2.arg = 5;
} catch(e) {
ErrorHandler.handleError(e);
}
// ErrorHandler-Test6
try {
throw (new Error("Goodbye"));
} catch(e) {
ErrorHandler.handleError(e);
}
// ErrorHandler-Test7
try {
throw "Goodbye again";
} catch(e) {
ErrorHandler.handleError(e);
}
// ErrorHandler-Test8 …Run Code Online (Sandbox Code Playgroud)