在Rails 3.1中,我在验证时使用force_ssl。当我将重定向uri附加为查询字符串时,这似乎会导致问题,因为它在http - >中被删除了。 https协议开关。如果我从https协议开始,查询字符串保持不变,重定向就好了。
关于如何通过force_ssl协议开关保存查询字符串的任何想法?
答案 0 :(得分:4)
最新版本的rails已修复https://github.com/rmm5t/rails/commit/391e6a47dbd46fdce0a472819e8d27792cc91984
如果必须使用Rails 3.1,则必须在过滤之前创建自己的强制ssl
before_filter :check_ssl
def check_ssl
redirect_to({:protocol => 'https'}.merge(params), :flash => flash) unless request.ssl?
end