我使用此功能登录,但我在$http.post
方法中遇到问题。我的服务器响应400(错误的请求)到错误的用户名&密码,但在这个角度代码loginSuccess
函数每次运行(即使用不正确的用户名和密码)和其他奇怪的事情是响应是undefined
,而我可以在浏览器网络控制台中看到响应。
function login (data) {
var deferred = $q.defer();
$http.post('api/authentication/login', data)
.then(loginSuccess, loginFailed);
// .success(loginSuccess);
return deferred.promise;
function loginSuccess (response) {
console.log(response); // <-- undefinde
deferred.resolve();
}
function loginFailed () {
deferred.reject();
}
}
但是当我使用success
方法(不推荐使用)时,没有问题,并且当响应错误时,登录成功不会运行。
答案 0 :(得分:0)
正如@zeroflagL所说,问题来自拦截器。 我忘了在onResponseError中返回响应。