1

在我的 Sinatra 应用程序中,我正在使用机架会话

use Rack::Session::Cookie, :secret => ENV['SECRET']

即使我没有在会话中设置任何内容,它似乎也在为每个页面加载设置一个 cookie。如果设置了会话,有没有办法将其更改为仅设置 cookie?

4

1 回答 1

1

Rack::Session::Cookie将会话保存到编组的 RubyHash中。

基本上,它正在编组您的会话并将其保存到 cookie 中。

它不在乎你的 session 是空的Hash
它无论如何都会被编组并持久化到 cookie 中。

您真的需要将会话保存在 cookie 中吗?

也许use Rack::Session::Pool将您的会话保存在内存池中?
然后它只会设置一次cookie。

于 2012-11-22T18:04:11.193 回答