Ruby on rails 会话存储:活动记录存储选项

Ruby on rails 会话存储:活动记录存储选项,ruby-on-rails,ruby-on-rails-3,session,activerecord,Ruby On Rails,Ruby On Rails 3,Session,Activerecord,在配置会话存储时想知道:secret和:key选项的含义。例如,我有如下配置: MyApp::Application.config.session_store :active_record_store, {:key => '_my_app_session', :secret => '5xb5x1g92e965b95b16e49x79gxx9999', :expire_after => 2.hours} :secret和:key选项在这里做什么?我用谷歌搜索了一下,但

在配置会话存储时想知道:secret和:key选项的含义。例如,我有如下配置:

MyApp::Application.config.session_store :active_record_store, 
    {:key => '_my_app_session', :secret => '5xb5x1g92e965b95b16e49x79gxx9999', :expire_after => 2.hours}
:secret和:key选项在这里做什么?我用谷歌搜索了一下,但没有多少答案


谢谢

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

活动记录会话存储:

序列化程序可以是marshal、json或hybrid中的一种。marshal是默认值,并使用内置的marshal方法和Base64编码。json使用json模块的parse()和generate()方法执行tin上的操作。hybrid将读取任一类型,但作为json写入

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