Restangular 获取响应错误
Restangular get response errors
我在 angular 有一个简单的验证工厂,代码如下
.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
问题是我需要在登录时显示错误(如果有的话)并将它们设置在 controller
中,但是 restangular
是异步的,我不知道该怎么做。正如您从第一个代码段中看到的那样,我尝试 return 这些值,但即使它们似乎也不起作用。
如何使用 Restangular scope 从服务器获取响应代码
你应该return 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
我在 angular 有一个简单的验证工厂,代码如下
.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
问题是我需要在登录时显示错误(如果有的话)并将它们设置在 controller
中,但是 restangular
是异步的,我不知道该怎么做。正如您从第一个代码段中看到的那样,我尝试 return 这些值,但即使它们似乎也不起作用。
如何使用 Restangular scope 从服务器获取响应代码
你应该return 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