2015-07-13 53 views
3

我有一個登錄表單下面的代碼的成功函數:

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 
+0

這也發生在我身上,但以'PUT狀態代碼:403'。這可能就是403.默認情況下發生的事情。 –

回答

1

我也有類似的問題,你發現的原因是因爲我以前曾配置了$ httpProvider攔截::

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

關於刪除這個,我的錯誤回調被正確地調用。

另一個編號:https://github.com/angular/angular.js/issues/2609

+0

確實,我有一個攔截器。但我無法擺脫它。你有沒有找到解決方案? –

相關問題