即使在angularjs中发生客户端错误,我们如何避免错误块执行?

时间:2015-08-20 09:14:08

标签: angularjs

我的意思是,如果我们点击一​​个url并尝试取消它,则会执行错误块。但我正在尝试的是避免在发生客户端错误时进入错误块并仅在执行错误块时服务器端在角度js

中出错

1 个答案:

答案 0 :(得分:0)

根据我对该问题的理解 - 如果请求超时,您将尝试确保不执行错误代码,仅在服务器返回错误时执行错误代码。

执行此操作的最佳方法是检查传递给catch块的error参数的status属性,表示超时,状态为0

  var req={ 
    method : 'GET', 
    url :"url",
    cache:'templateCache', 
    timeout: 100 
  };

  $http(req)

  .then( function () {
    // Success case
    console.log("success");
  })

  .catch( function (e){
    // This happens if the request is cancelled
    if(e.status === 0)
      console.warn("Request timed out");
      return;

    // Handle server errors here.
    console.error("Server error", e);

  });