我正在使用doorkeeper
gem的项目。
我已成功设置一切。
现在我想做的是在注册成功后登录用户。我使用sorcery
gem进行身份验证。
我的注册过程工作正常,我从门卫那里得到access_token
。
但我无法使用doorkeeper
gem登录用户。
这是我的users_controller.rb
def create
profile = Profile.new(params.permit(:birth_date, :phone_number))
user = profile.build_user(params.permit(:first_name, :last_name, :email, :password))
if profile.save
@access_token = Doorkeeper::AccessToken.create!(
resource_owner_id: user.id,
application_id: doorkeeper_token.application_id,
use_refresh_token: Doorkeeper.configuration.refresh_token_enabled?,
expires_in: Doorkeeper.configuration.access_token_expires_in
)
#This line is for authentication provided by sorcery gem
@user = User.authenticate( params[:email], params[:password])
else
error!(:unprocessable_entity, metadata: { details: profile.errors })
end
end
我尝试在我的users_controller.rb上使用门卫提供的resource_owner_from_credentials
方法进行登录,但我仍然失败如下:
Doorkeeper.resource_owner_from_credentials do
User.authenticate(params[:email], params[:password])
end
可以告诉我如何在成功注册门卫和巫术宝石后登录用户。
非常感谢你。