kemal-session不能持久保存数据

https://github.com/kemalcr/kemal-session

分析一下你的会话cookie发生了什么。在我的例子中,每次我去登录时,会话cookie都被重置。

我意识到,我的想法是,在成功登录后,在建立新的会话之前,先清理旧的会话作为第一条语句,这不是一个好主意。我怀疑,一旦你调用env.session.destroy,浏览器的cookie就会被删除。

不好

      post "/login" do |env|
           env.session.destroy # 清理任何旧的会话。
           user = UserSession.new(参数)

          env.session.object("user",user)。

          env.redirect "/"
    结束

新的会话将永远不会被设置,因为cookie被标记为删除。

很好

    get "/login" do |env|
         销毁
         #show登录掩码
       结束

       post "/login" do |env|
          user = UserSession.new(参数)
         env.session.object("user",user)。
         env.redirect "/"
       结束

如果用户调用/login,旧的会话将被销毁,以确保/post状态下的空白板。