簡體   English   中英

角$ http.post然后方法不起作用

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM