如何根据其httpConfig信息以角度取消截获的$ http请求?

时间:2014-08-14 09:38:51

标签: javascript angularjs angularjs-http

我正在使用angular-http-auth软件包,它是一个用于angular的HTTP拦截器,可以检测401个非授权请求,并允许延迟请求并在它之前执行授权。

但是,我有一个问题,授权是另一个请求,也可以触发401错误。我想取消这些请求,因为我将重新发布它们。

从本质上讲,我接受了这样的事件:

$scope.$on('event:auth-loginRequired', function (event, httpHeader) {

})

其中,事件为JS event对象,而httpHeader是一组有关请求的数据,即401' d。

httpHeader的例子:

{
  "data": "",
  "status": 401,
  "config": {
    "method": "POST",
    "transformRequest": [null],
    "transformResponse": [null],
    "data": { "password": "wrqwfqwvcfqwfcq", "userName": "user123"},
    "url": "https://localhost:44300/api/authentication",
    "headers": {
      "Accept": "application/json, text/plain, */*",
      "Content-Type": "application/json;charset=utf-8",
      "X-Auth-Token": "73r23r"
    },
    "withCredentials": true
  },
  "statusText": "Unauthorized"
} 

因此,我分析httpHeader.config.url,我可能希望取消某些特定的URL请求(保持其他未决请求不受影响和等待),最好是基于httpHeader和收到的事件信息。我怎么能这样做?

0 个答案:

没有答案