【发布时间】:2013-05-24 18:38:00
【问题描述】:
我正在使用 Rails 3 和 Devise 进行身份验证。
我想跟踪用户何时从另一个域或通过输入 URL 进入我的网站。假设我的网站上有以下页面:
http://www.mysite.com/somepage
如果访问者通过单击另一个站点上的链接或在其浏览器中键入该 URL 来请求此 URL,我想将该 URL 放入 cookie 中以供以后使用。如果/somepage 不需要登录,它可以正常工作。在before_filter 中,我只是检查推荐人是否来自mysite.com。
但是,当/somepage 需要登录时,Devise 会进行重定向,从而导致对我的登录页面的第二次请求。原始引荐来源网址将转至新请求。所以我的代码认为它是原始请求的 URL 并覆盖了 cookie。错了。
我可能只是有心理障碍,但我看不出如何确定重定向到的页面不是请求的原始页面。
【问题讨论】:
标签: ruby-on-rails http devise