2015-10-17 62 views
1

我使用此功能在登录电子,但我在$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

你能重新在** [plnkr.co]这个问题(http://plnkr.co/)**? – ryeballar

+0

如何在plunkr中模拟服务器响应? –

+0

如果你想创建一个get请求,你为什么使用$ http.post? – Sagi

回答

0

由于@zeroflagL mentionded的问题是从一个拦截器。 我忘记了在onResponseError中返回响应。