在配置session_store时想要了解:secret和:key选项的含义。所以,例如我有如下配置:
MyApp::Application.config.session_store :active_record_store,
{:key => '_my_app_session', :secret => '5xb5x1g92e965b95b16e49x79gxx9999', :expire_after => 2.hours}
:秘密和:关键选项会在这里做什么?我用Google搜索但没有多少答案。
由于
答案 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为我解决了这个问题。