2
respostas

[Bug] Erro ao fazer a instalação no CMD e não consigo fazer o cadastro

Erro após incluir o comando npm start no cmd e erro ao tentar fazer login.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Olá, Rosenilda. Como vai?

Obrigado por compartilhar as imagens com os logs detalhados do terminal! Esse tipo de problema é muito comum quando estamos configurando projetos que possuem um ecossistema completo (um frontend em Angular se comunicando com um backend em NestJS e um banco de dados).

Analisando os seus dois prints, tenho uma boa e uma má notícia para te dar, mas a solução é bem direta.

A boa notícia é que o seu frontend (a aplicação Angular da primeira imagem) foi instalado e compilado com 100% de sucesso (Compiled successfully). Aquele aviso em amarelo no terminal é apenas um Warning de CSS sobre compatibilidade de navegadores antigos, então pode desconsiderá-lo; seu app está rodando normalmente no endereço http://localhost:65494/.

O problema real está na sua segunda imagem: o terminal da sua API (backend em NestJS).


O Diagnóstico do Bug: FOREIGN KEY constraint failed

Ao tentar fazer o login ou cadastro na interface, a sua tela exibiu o aviso "Você não está autorizado a acessar este recurso". Ao mesmo tempo, o terminal da API disparou uma sequência de erros vermelhos:
QueryFailedError: SQLITE_CONSTRAINT: FOREIGN KEY constraint failed

Esse erro do banco de dados (SQLite) significa que o backend tentou salvar ou buscar uma informação (como o perfil do usuário ou um token) que depende de um ID de outra tabela que ainda não existe ou está corrompido no banco de dados.

Como o projeto é uma base de testes local para o Playwright, isso geralmente acontece quando os dados iniciais do banco (seeds) não foram carregados corretamente ou se o banco ficou em um estado inconsistente durante os testes.


Como resolver o problema passo a passo

Para desobstruir o seu acesso e conseguir cadastrar/logar seu usuário, precisamos limpar o estado desse banco de dados local da API e reiniciá-lo. Siga estes passos no seu segundo terminal (o do CMD que está com os erros vermelhos):

  1. Derrube a API: No terminal do CMD, aperte as teclas Ctrl + C juntas (talvez precise apertar mais de uma vez) para encerrar o servidor NestJS que está travado.
  2. Reset ou Limpeza do Banco: Verifique na pasta do seu projeto de API (jornada-milhas-api-main) se existe um arquivo com a extensão .sqlite ou .db (geralmente chamado database.sqlite ou similar). Se houver, você pode apagá-lo (a aplicação recriará um novo limpo ao iniciar).
  • Dica: Olhe no arquivo package.json da API se existe algum comando como npm run db:seed ou npm run migration:run. Se houver, execute-o no terminal para reconstruir as tabelas corretas.
  1. Reinicie o Backend: Execute novamente o comando de inicialização da API (geralmente npm run start:dev ou o comando indicado no README do curso para o backend).
  2. Crie uma nova conta: Com a API reiniciada e sem erros no terminal, volte ao navegador, clique no link "Ainda não possui conta? Clique aqui para cadastrar", crie um novo usuário do zero e tente logar.

Faça esse reset no terminal da API e nos conte se o banco de dados voltou a aceitar as novas requisições de autenticação!

Bom dia, Evandro! Tudo bem? Muito obrigada por tentar me ajudar, mas infelizmente não deu certo. O erro continua. Quando vou fazer o cadastro, o sistema exibe a mensagem de erro "Erro interno do servidor".

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
E no terminal CMD, dá o mesmo erro que antes:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade