Executando verificação de segurança...
1

Next 13 Como funciona authenticação JWT

Eu trabalho com react a 2 anos e agora resolvi aprender next, comecei a fazer uma aplicação que utiliza o github para fazer o login e a minha api cria um token jwt e se preocupa de cadastrar o usuário no meu banco de dados. Quem chama a minha api e o próprio node do next e depois salva o token JWT em cookies. Agora com esse token fiquei com algumas duvidas de como trabalhar com ele, já que o next trás essa questao de páginas estáticas sem js pensei qual abordagem seria mais interessante, porque usando contextApi elas se tornam obrigatórias a usar 'use client' e eu gostaria de manter páginas estáticas.
Então qual seria a melhor estratégia para trabalhar com autenticação para paginas client, estaticas, server side render no next?

Carregando publicação patrocinada...
1

Ainda não fiz isso no Next 13, mas acho que tenho uma ideia:

Você pode continuar salvando seu token em um cookie e passar pro seu componente como parâmetro (prop). O server component roda em um ambiente node, então vc consegue fazer quase a mesma coisa que vc faria na pages/api da versão antiga.

Aí vc pode receber isso no client side via prop e dali vc decide como quer fazer, se for salvar num Context pode ser que vc precise transformar muitos componentes em client mesmo. Essa parte de mexer com o Context ainda ta um pouco confusa com os Server Components, mas tem como fazer.

Mas talvez não precise de um context. As vezes vc pode ter um serviço de API que recebe e salva o token no client side e aí vc importa esse serviço na hora que for chamar a API.

1

clCom essa abordagem de compinentizacao do lado do servidor é possivel fazer chamadas Api direto, sem a necessidade do uso de axios ou fetch, incluindo o fato de ser possivel mesclar componentes client side em componentes server side, caso o usuario faça uma ação que seja necessaria a verificação da validade do token acredito que fazendo um refrsh na tela "na unha" seja possivel a consulta da validade do token em questão.