angularjs - $http.post 即使状态为 Unauthorized 403 也进入成功函数

标签 angularjs request

我有以下登录表单代码:

function(loginData) {
    var deferred = $q.defer();
    var data = {
        "email": loginData.email,
        "password": loginData.password,
        "remember": loginData.remember
    };
    $http.post(CONSTANTS.baseURL + '/login', data)
        .success(function(data, status, headers, config) {
            _authenticate(data);
            //redirects to home
            $state.go('home');
            // location.hash = "#/home";
            deferred.resolve(true);
        })
        .error(function(data, status, headers, config) {
            //show error message
            _logout();
            deferred.resolve(false);
            return false;
        });
    return deferred.promise;
};

调试代码总是会触发 .success 函数。 请求的状态是 403。.success 函数的状态参数也是 403

Request Method:POST
Status Code:403 Forbidden

最佳答案

我遇到了和你类似的问题,发现原因是因为我之前配置了一个$httpProvider intercept::

app.config(function ($httpProvider) {
    $httpProvider.interceptors.push('myHttpInterceptor');
});

删除它后,我的错误回调被正确调用。

另一个引用:https://github.com/angular/angular.js/issues/2609

关于angularjs - $http.post 即使状态为 Unauthorized 403 也进入成功函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31376925/

相关文章:

javascript - AngularJS ng-model 在选择绑定(bind)到名称而不是值

HTML5 拼写检查 - 确定是否发现任何拼写错误的单词的任何方法

javascript - 联锁项目的下拉级联

java - 为什么 jsp request.getParameter (“String” ) 在第一次调用后返回 null?

javascript - 发出多个请求并将它们传递给模板(Express + Node.js + FB open graph)

c++ - 使用 C++ 的简单 HTTP 请求

Django request.POST 不包含提交表单的按钮的名称

angularjs - 在angularjs中的某些字段上设置条件焦点

javascript - 在 Ionic 中处理 CORS 问题

JSON 请求图像到 UIImageView