18

在 Ruby on Rails 中,如何将会话 cookie 的 httpOnly 设置设置为 false?

4

4 回答 4

10

在 Rails 4 中,您需要编辑config/initializers/session_store.rb

Rails.application.config.session_store(
  :cookie_store,
  key: '_socializus_session',
  httponly: false,
)
于 2013-07-12T08:07:02.100 回答
7

我想通了。在/config/environment.rb包括此代码:

  config.action_controller.session = {
    :httponly => false
  }
于 2010-04-21T03:52:48.453 回答
7

这就是我使用 Rails 3 的方式:

Testapp::Application.config.session_store :cookie_store, key: '_testapp_session', :domain => :all, :httponly => false
于 2011-12-28T17:11:31.050 回答
1

Rails 将其默认设置为 true。我不建议更改它,因为它会设置您可访问的 cookie,以便从 JS 进行更改,例如:document.cookie

在 Rails 3+ 中,您可以从以下位置更改 cookie 配置config/initializers/session_store.rb

# Be sure to restart your server when you modify this file.
Rails.application.config.session_store :cookie_store, key: "_my_application_session", httponly: false
于 2016-11-07T20:59:49.693 回答