我使用的是Ruby 4.2.3和Devise 4.2.0,我尝试使用POST方法登录($ resource AngularJS)但是我得到401 Enauthorized错误('您需要先登录或注册才能继续')
我关注此Documentation,如果我在我的应用之外尝试,它正常工作。例如,使用' Postman'
好吧,有些代码:
我的角度控制器将登录数据发送到服务器:
$scope.log_in = function(){
sendData = new Sign_in($scope.user);
sendData.$save(null, function(response){
$cookies.put("user_email", $scope.user.email);
$cookies.put("user_token", response.data.authentication_token);
}, function(error){
console.log('error log in');
});
}
我的会话设计控制器(与教程完全一样)
class Users::SessionsController < Devise::SessionsController
def create
user = warden.authenticate!(auth_options)
token = Tiddle.create_and_return_token(user, request)
render json: { authentication_token: token }
end
def destroy
Tiddle.expire_token(current_user, request) if current_user
super
#render json: {}
end
private
# this is invoked before destroy and we have to override it
def verify_signed_out_user
end
end
我的邮递员示例显示正在运作:
我缺少什么?我试着四处看看,但我找不到任何更新的信息。您可以推荐哪些指南?
谢谢!
编辑: Sign_in
function Sign_in($resource){
var sign_in = $resource('sign_in/.json', {id: '@id'});
return sign_in;
}