kemal-session não persiste dados

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

Analise o que está acontecendo com o cookie da sua sessão. No meu caso, o cookie da sessão foi reinicializado toda vez que eu fui fazer o login.

Percebi que a minha ideia de limpar a sessão antiga como uma primeira declaração após o login bem sucedido, antes de montar a nova sessão, não é uma boa ideia. Eu suspeito, que o cookie do navegador é removido uma vez que você chama env.session.destroy.

ruim

      postar "/login" do |env|
           env.session.destroy #clean up any old session
           user = UserSession.new(parâmetros)

          env.session.object("utilizador",utilizador)

          env.redirect "/"
    final

A nova sessão nunca será definida, uma vez que o cookie está marcado para eliminação

bom

    obter "/login" do |env|
         env.session.destroy
         #show máscara de login
       final

       postar "/login" do |env|
          user = UserSession.new(parâmetros)
         env.session.object("utilizador",utilizador)
         env.redirect "/"
       final

A sessão antiga será destruída se o usuário chamar /login, para garantir uma tabela em branco para o estado /post.