Open jemluz opened 3 months ago
Adapter é uma estrutura mediadora, um ponto de conexão entre 2 sistemas, nesse caso entre o banco de dados e a nossa aplicação.
No NextAuth nós podemos usar diversos templates de adapters, além de poder criar o nosso próprio modelo.
Para a função de criação que está dentro do adapter, o cenário é um pouquinho diferente. Precisamos capturar o id (do pré cadastro) que está dentro dos cookies (@ignitecall:userId
).
Ou seja, na realidade o metodo createUser é um update por baixo dos panos, para preencher as informações que faltam no usuário. Pois a criação em si foi feita durante o pré cadastro com um volume menor de dados.
Veja nesse commit como resolvemos o problema: o objeto authOptions foi transformado em uma função que retorna o objeto de fato. Mas essa função agr recebe parâmetros req e res, que serão repassados para o adapter, por sua vez.
E é com esses parâmetros que poderemos então capturar o id que está nos cookies (pela request), bem como atualizar os cookies se necessário (pela response)
Criando oAuth com Google
Em primeiro lugar vc deve configurar um projeto no Google Cloud Console para poder consumir a API gerada nele.
Depois de criado um projeto, o próximo passo é criar um ID de Cliente OAuth
Ele irá gerar para vc um id do client e uma chave secreta
Vc irá colocar as duas no arquivo
.env
da sua aplicaçãoPor fim, precisamos ir na parte de API e em seguida na opção Ativar API > Google Calendar API
Pronto agora sua API está pronta para receber conexões de clients.