1
resposta

Impossível armazenar token JWT em session ou VueX no Vue 3

Estou tendo problemas com armazenamento do token JWT de uma API em memória no Vue 3. Ao armazenar em uma sessão ou num store, simplesmente não permanece. Já tentei usar o plugin vuex-persistedstate, mas mesmo assim não funciona. Não consigo obter o token de um desses armazenamentos. . Eu consigo armazenar permanentemente qualquer coisa, obtenho o token (já verificado em console.log) mas o token some ao mudar de página.

1 resposta

Oi Fabrício!

O vuex-persistedstate deve funcionar, mas às vezes pode haver alguma configuração faltando. Certifique-se de que está configurado corretamente.

Se o vuex-persistedstate não estiver funcionando, imagino que você pode tentar armazenar o token diretamente no localStorage do navegador. Isso garante que o token persista mesmo após a atualização ou mudança de página.

// Para armazenar o token
localStorage.setItem('token', seuToken);

//  Recuperar o token
const token = localStorage.getItem('token');

Outro ponto é às vezes, a navegação entre páginas pode causar a perda de estado se a configuração do router não estiver correta. Certifique-se de que suas rotas estão configuradas para manter o estado.

De forma geral, tenta usar o console.log para verificar em diferentes pontos se o token está realmente sendo armazenado e recuperado corretamente também. Isso pode ajudar a identificar onde o problema está ocorrendo.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!