Angular.js $ http拦截“net :: ERR_CONNECTION_REFUSED”

我试图用$http'拦截器为我的网站编写一个通用的error handling程序,但他们似乎无法做我想做的事情。

我在'response''responseError'放置了拦截器,但是当服务器离线/不响应时(net :: ERR_CONNECTION_REFUSED),它们不会被调用。 我明白为什么会发生这种情况,对拦截没有反应。

我想知道是否有捕获这些错误的通用方法,除了听每个请求$httpPromiseerrorcallback。

One Solution collect form web for “Angular.js $ http拦截“net :: ERR_CONNECTION_REFUSED””

您可能可以检查ResponseError的状态。 当一个API离线的时候是0(直到Angular 1.3.18)或者-1(从Angular 1.3.19开始):

 angular.module("services.interceptor", arguments).config(function($httpProvider) { $httpProvider.interceptors.push(function($q) { return { responseError: function(rejection) { if(rejection.status <= 0) { window.location = "noresponse.html"; return; } return $q.reject(rejection); } }; }); }); 
  • 返回一个PHP页面作为图像
  • 来自C#客户端的多部分表单
  • Google Protocol Buffers和HTTP
  • Android,通过HTTP POST(SOAP)发送XML
  • 作为对XHR请求的响应返回redirect
  • url:用户名@
  • 如何从Node.js的http获取请求中获取数据
  • 为什么不能在HTTP GET请求上修改数据?
  • 在Android中进行asynchronousHTTP请求是否有一个公认的最佳做法?
  • 将HTTP头添加到NSURLRequest
  • Java是否有HTTP响应代码的完整枚举?