使用dojo捕获AJAX onSuccess句柄中的Javascript错误

时间:2014-01-25 12:30:05

标签: javascript ajax error-handling dojo

我目前正在dojo的帮助下开发WebApp。

当我的代码中出现错误时,会在AJAX请求的onSuccess函数内执行。 (见代码)

var promise = dojo.request.get("url");

promise.then(function(data){
    //CODE with an Error
    var test = tasd.gat().yxc;  //e.g. Reference error
  }, 

  function(err){

  });

此错误由dojo自动处理(例如原型ajax功能相同),甚至不打印到控制台。

如何防止dojo处理这些错误?

我可以使用try catch块包装每个onSuccess函数并自己处理它(对我有用),但我有很多ajax调用,我不想为每个call / onSuccess函数执行此操作。

我目前正在使用window.onError函数,它非常适合调试(我知道每个浏览器都不支持它)。我使用自己的错误处理,也将错误写入服务器,因此最好的解决方案是将错误处理函数传递给dojo以获取特殊类型的错误,或者防止dojo将错误设置为在dojo处理之后处理的错误把它传递给下一个处理程序。

知道怎么做?

提前致谢

Moritz的

p.s。:任何想法如何捕获最高lvl上的所有错误(可能类似于window.onError),它在大多数浏览器中工作,或者是一个处理所有不同浏览器window.onError等效的库?

1 个答案:

答案 0 :(得分:1)

我没有机会在1.9中使用AOP支持,但在过去我会使用Dojo的面向方面支持来实质上接受你的XHR调用并用一般的错误处理程序包装它们。

类似的东西:

Getting global handler to all AJAX calls in dojo