Node.js v18.16.1 [nodemon] app crashed - waiting for file changes before starting...
Node.js v18.16.1 [nodemon] app crashed - waiting for file changes before starting...
Olá, David! Tudo bem?
Pelo que você descreveu, parece que seu servidor Node.js está caindo e o Nodemon está esperando por mudanças no arquivo para reiniciar o servidor. Isso geralmente ocorre quando há algum erro no código que impede que o servidor seja iniciado corretamente.
Vamos tentar resolver isso juntos. Primeiro, verifique se há algum erro no seu código. Você pode fazer isso ao iniciar o servidor manualmente com o comando node server.js
no terminal. Se houver algum erro, ele será exibido no console.
Caso não apareça nenhum erro, verifique se você instalou corretamente o Nodemon e se o script "dev" no seu arquivo package.json
está configurado corretamente. O script "dev" deve ser semelhante a este:
"scripts": {
"dev": "nodemon server.js",
"test": "echo \"Error: no test specified\" && exit 1"
}
Depois de verificar isso, tente executar o servidor novamente com o comando npm run dev
no terminal.
Se mesmo assim o problema persistir, por favor, compartilhe o código do seu arquivo server.js
para que eu possa ajudá-lo melhor.
Espero ter ajudado e bons estudos!
Oi Boa Tarde! Estou com o mesmo problema nessa parte do curso.
Não sei o " DAVID HENRIQUE DA SILVA CRUZ" conseguiu resolver, porem estou com esse mesmo erro. Segui abaixo o codigo do projeto.
// server.js
import app from "./src/app.js";
const PORT = 3000;
const rotas = {
"/": "Curso de NodeJS....",
"/livros": "Entrei na rota de livros...",
"/autores": "Entrei na rota autores..."
}
app.listen(PORT, () => console.log(`Servidor em Execução na Porta ${PORT}...`));
// dbConnection.js
import mongoose from "mongoose";
async function conectaDatabase() {
mongoose.connect("mongodb+srv://mateus:mateus123@cluster0.js84yeu.mongodb.net/Livraria?retryWrites=true&w=majority");
return mongoose.connection;
}
export default conectaDatabase;
// app.js
import express from "express";
import conectaDatabase from "./config/dbConnect.js";
const conexao = await conectaDatabase();
const app = express();
conexao.on("error", (erro) => {
console.error("Erro de conexao com o Banco de Dados...\n", erro);
})
conexao.once("open", () => {
console.log("Conexao com o Banco de dados feita com sucesso...\n");
})
app.use(express.json()); // Middleware
const livros = [
{ id: 1, titulo: "O Senhor dos Aneis" },
{ id: 2, titulo: "O Hobbit" },
]
function buscarLivro(id) {
return livros.findIndex(livro => {
return livro.id === Number(id);
});
}
app.get("/", (req, res) => {
res.status(200).send("Node JS com MongoDB");
});
app.get("/livros", (req, res) => {
res.status(200).json(livros);
});
app.get("/livros/:id", (req, res) => {
const index = buscarLivro(req.params.id);
res.status(200).json(livros[index]);
});
app.post("/livros", (req, res) => {
livros.push(req.body);
res.status(201).send("Livros cadastrado com sucesso...");
});
app.put("/livros/:id", (req, res) => {
const index = buscarLivro(req.params.id);
livros[index].titulo = req.body.titulo;
res.status(200).send("Livro alterado com sucesso...");
});
app.delete("/livros/:id", (req, res) => {
const index = buscarLivro(req.params.id);
livros.splice(index, 1);
res.status(200).send("Livro Deletado com sucesso...");
});
export default app;
segui abaixo os codigos do arquivo package.json
{
"name": "express-mongodb",
"version": "1.0.0",
"description": "",
"main": "index.js",
"type": "module",
"scripts": {
"dev": "nodemon server.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.18.1",
"mongodb": "^6.1.0",
"mongoose": "^7.3.4"
}
}
Olá, Boa tarde!
Consegui resolver o problema de conexão da API NodeJS local com o Cluster do MongoDB Atlas.
Global
Assim a aplicaçao conseguiu conectar ao Cluster do MongoDB Atlas sem mais erro.