[英]angular $http.post then method doesn't work
我使用此功能登錄,但是在$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
方法(不建議使用)時,沒有問題,並且當響應為錯誤時登錄成功也不會運行。
正如@zeroflagL提到的,問題出在攔截器上。 我忘記了在onResponseError中返回響應。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.