我正在使用 Rack 尝试在我的 Sinatra 应用程序中实现“记住我”功能。
我可以将会话 cookie 设置为在会话结束时或 X 秒后过期,但我想两者都做。
例如,如果用户点击了“记住我”,那么我希望他们的会话在 X 秒后结束。例如,我的 app.rb 有一行如下所示:
use Rack::Session::Cookie, :expire_after => 2592000, #30 days in seconds
:secret => MY_SECRET
当用户登录时,我尝试执行以下操作:
if (!remember_me)
env['rack.session.options'][:expire_after] = nil
end
但是,这不会设置 cookie 值。
这个怎么设置?