Restangular获得响应错误

时间:2016-11-04 07:41:08

标签: angularjs restangular

我有一个角度很简单的auth工厂,代码如下

.factory 'User',($window,$rootScope,Restangular)->
    {
        auth: (username,password)->
            Restangular.all 'auth/login/'
            .post {username:username,password:password}
            .then (response)->
                return response
            ,(response) ->
                return response
        .....

我正在使用

从我的控制器中调用它
$scope.login = ()->
    $scope.running = 1
    console.log User.auth $scope.username,$scope.password
    $scope.running = 0
    return

问题是我需要在登录时显示错误,并将其设置为controllerrestangular为异步,我不知道如何做同样的事情。正如您从第一个代码段中看到的那样,我试图返回值,但即使它们似乎也不起作用。

如何使用 Restangular

范围中获取服务器的响应代码

1 个答案:

答案 0 :(得分:2)

你应该返回restangular调用,这是一个承诺。然后在回调中你可以对错误做些什么:

auth: (username,password)->
    return Restangular.all 'auth/login/'
    .post {username:username,password:password}

控制器:

$scope.login = ()->
    $scope.running = 1
    User.auth( $scope.username,$scope.password)
    .then (response)->
        // success
    ,(response)->
        // fail
    .finally (response)->
        $scope.running = 0