为我的支付控制器实施http

时间:2014-04-10 17:38:29

标签: ruby-on-rails ruby-on-rails-3 ssl https ruby-on-rails-3.2

我使用的是rails 3.2,我希望我的付款方式能够重定向到https。

我在我的routes.rb中尝试了以下功能:

resources :payments, only: [:new, :create], :constraints => { :protocol => "https" }

我收到的错误是:

No route matches [GET] "/payments/new"

我目前正在本地环境中对此进行测试,并且在没有contraints

的情况下工作正常

1 个答案:

答案 0 :(得分:1)

您想要重定向到payments/new路由的https版本,而不是对其进行约束。这就是您看到No route错误的原因(假设您未在localhost上使用https)。阅读here上想做的事情。这是一个整洁的Rack中间件宝石,可以用来进行重定向:https://github.com/josh/rack-ssl