【发布时间】:2014-02-03 22:49:41
【问题描述】:
在我的项目中,我使用omniauth-facebook(g+) gems 为用户提供一键创建帐户的能力。然而,在用户登录 facebook(g+) 后,他被重定向到回调 url。就我而言,它看起来像 www.example.com/users/omniauth_callbacks/facebook
facebook 操作看起来像
def facebook
@user = User.find_by_email(ENV['omniauth'].email)
if @user
sign_in @user
redirect_to root_path
else
create_user_account(ENV['omniauth'])
end
但不是redirect_to root_path,我想将用户返回到他调用登录过程的页面。我尝试使用redirect_to :back ,但这会抛出空HTTP_REFERRER 的错误。有没有其他方法可以在用户开始登录过程之前跟踪控制器和操作,然后存储它并在回调后使用?
【问题讨论】:
标签: ruby-on-rails ruby facebook omniauth