everytime i am doing some change to code and then run it this error comes i have changed many ports and dont know the reason behind it . Also please explains process.env.PORT meaning and its significance , thanks in advance
index.js
/*******installed modules****** */
const express = require('express')
const mongoose = require('mongoose')
const path = require('path')
/*****user created modules******* */
const User = require('./model/user')
const PORT = 8005
const app = express()
/*********middlewares**********/
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
app.use(express.static('static'))
/******view engine*********** */
app.set('views', path.join(__dirname, 'views'));
// Set view engine as EJS
app.engine('html', require('ejs').renderFile);
app.set('view engine', 'html');
/********connect with mongoDb cloud********/
const mongoUrl = 'mongodb+srv://admin:{my_key}@cluster0.zskv7.mongodb.net/myFirstDatabase?retryWrites=true&w=majority'
mongoose.connect(mongoUrl, { useNewUrlParser: true, useUnifiedTopology: true });
mongoose.connection.on("connected", () => {
console.log("connected to mongoDb");
});
/*********get request to check if server is working properly*********/
app.get('/', (req, res) => {
res.render('index')
})
app.use('/favgame', (req, res) => {
const { name, fav_game } = req.body
User.find({ name: name })
.then((oldUser) => {
if (oldUser) {
return res
.status(422)
.json({ error: "user already exists in the database" });
}
//if user does not exists initially
//create new user with these details
const user = new User(req.body);
user
.save()
.then((user) => {
res.json({ message: "successfully saved" })
console.log('User saved successfully')
})
.catch((err) => {
res.send("Error", err)
console.log('cannot create user some error');
});
})
})
/**********listening on server************ */
app.listen(PORT, (err) => {
if (err) {
return console.log(err);
}
console.log(`Server started on PORT: ${PORT}`);
})
error coming
node:events:342
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use :::8005
at Server.setupListenHandle [as _listen2] (node:net:1306:16)
at listenInCluster (node:net:1354:12)
at Server.listen (node:net:1441:7)
at Function.listen (/home/dhruv/Desktop/quiz_question/node_modules/express/lib/application.js:618:24)
at Object.<anonymous> (/home/dhruv/Desktop/quiz_question/index.js:75:5)
at Module._compile (node:internal/modules/cjs/loader:1109:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10)
at Module.load (node:internal/modules/cjs/loader:989:32)
at Function.Module._load (node:internal/modules/cjs/loader:829:14)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
at node:internal/main/run_main_module:17:47
Emitted 'error' event on Server instance at:
at emitErrorNT (node:net:1333:8)
at processTicksAndRejections (node:internal/process/task_queues:83:21) {
code: 'EADDRINUSE',
errno: -98,
syscall: 'listen',
address: '::',
port: 8005
}
i have checked previous questions posted on the similar title but didnt get help from it and error is not resolved by appyling those changes , i know error is very basic but not able to figure it out
Aucun commentaire:
Enregistrer un commentaire