如何通过force_ssl传递查询参数

时间:2012-04-20 20:52:46

标签: ruby-on-rails-3.1

在Rails 3.1中,我在验证时使用force_ssl。当我将重定向uri附加为查询字符串时,这似乎会导致问题,因为它在http - >中被删除了。 https协议开关。如果我从https协议开始,查询字符串保持不变,重定向就好了。

关于如何通过force_ssl协议开关保存查询字符串的任何想法?

1 个答案:

答案 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