session_store:active_record_store选项

时间:2012-03-30 14:58:55

标签: ruby-on-rails ruby-on-rails-3 session activerecord

在配置session_store时想要了解:secret和:key选项的含义。所以,例如我有如下配置:

MyApp::Application.config.session_store :active_record_store, 
    {:key => '_my_app_session', :secret => '5xb5x1g92e965b95b16e49x79gxx9999', :expire_after => 2.hours}

:秘密和:关键选项会在这里做什么?我用Google搜索但没有多少答案。

由于

2 个答案:

答案 0 :(得分:3)

我很确定这些选项仅在您使用cookie会话存储(而不是活动记录会话存储)时才有效。密钥是包含会话数据的cookie的名称,而密钥是用于加密/解密存储在cookie中的数据的值。

答案 1 :(得分:0)

Active Record Session Store:

“序列化程序可能是marshal,json或hybrid之一.marshal是默认值,并使用内置Marshal方法和Base64编码.json使用parse()执行它在tin上所说的内容并生成()JSON模块的方法.inbrid将读取任一类型,但写为JSON。“

添加:ActiveRecord::SessionStore::Session.serializer = :json到config / application.rb为我解决了这个问题。