在Doorkeeper.rb中,有一个验证块。我需要在这里使用这个逻辑,但我不确定如何编写它,因为Ruby的语法对我来说仍然是新的。
此人登录并且他们是current_user或以下执行的逻辑。
resource_owner_authenticator do
current_user ||
session[:after_login_redirect_to] = request.fullpath
session[:oauth_for_client_id] = params[:client_id]
redirect_to('/connect')
end
答案 0 :(得分:1)
第2部分需要一个开始/结束块。您希望验证者返回current_user
(如果存在),否则执行所有其他操作。
resource_owner_authenticator do
current_user || begin
session[:after_login_redirect_to] = request.fullpath
session[:oauth_for_client_id] = params[:client_id]
redirect_to('/connect')
end
end
答案 1 :(得分:0)
试试这个:
resource_owner_authenticator do
unless current_user do
session[:after_login_redirect_to] = request.fullpath
session[:oauth_for_client_id] = params[:client_id]
redirect_to('/connect')
end
end