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); } }; }); }); 
  • 如何从HTTP Last-Modified头parsingdate?
  • 加载本地文件时出错“仅支持HTTP来源的跨源请求”
  • http HEAD vs GET性能
  • 使用Node.js调用JSON API
  • HTTP请求方法的有效载荷
  • node.js服务器和HTTP / 2(2.0)与express.js
  • 确定PHP脚本的命令行与http执行的规范方法是什么?
  • AngularJS:factory $ http.get JSON文件
  • 没有Cookie或本地存储的用户识别
  • Python的`urllib2`:为什么我在urlopen维基百科页面时出现错误403?
  • 你如何添加一个自定义的http头?