簡體   English   中英

Node.js終端給出錯誤:聽EADDRINUSE ::: 8080

[英]Node.js terminal giving Error: listen EADDRINUSE :::8080

當我在終端中使用nodemon app.js命令運行它時,我在Node.js中創建了一個應用程序我收到此錯誤

events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::8080
    at Object.exports._errnoException (util.js:1022:11)
    at exports._exceptionWithHostPort (util.js:1045:20)
    at Server._listen2 (net.js:1259:14)
    at listen (net.js:1295:10)
    at Server.listen (net.js:1391:5)
    at EventEmitter.listen (E:\xampp\htdocs\sites\nodeapp\node_modules\express\lib\application.js:617:24)
    at Object.<anonymous> (E:\xampp\htdocs\sites\nodeapp\app.js:79:5)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.runMain (module.js:604:10)
    at run (bootstrap_node.js:394:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:509:3
[nodemon] app crashed - waiting for file changes before starting...

我的app.js.

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var morgan = require('morgan');
var jwt = require('jsonwebtoken');
var config = require('./config');
var user = require('./modal/user');
//var alte = require('admin-lte');

// set up view engine
app.set('view engine', 'ejs');

// set up static files
app.use(express.static('./'));

// configuration
var port = process.env.PORT || 8080; // used to create, sign, and verify tokens
mongoose.connect(config.database); // connect to database
app.set('superSecret', config.secret); // secret variable

// use body parser so we can get info from POST and/or URL parameters
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

// use morgan to log requests to the console
app.use(morgan('dev'));

// routes
// basic route to home/landing
app.get('/', function(req, res) {
    res.render('index');
});

// route to create user
app.get('/setup', function(req, res){
  //create user
  var nick = new user({
    username: 'test',
    password: 'test',
    admin: true
  });

  //save user
  nick.save(function(err){
    if(err) throw err;
    console.log('User saved successfully!');
    res.json({success: true});
  });
});

// route to get data from form
app.post('/authenticate', function(req, res){
    //find user
    user.findOne({username: req.body.username}, function(err, myuser){
      if(err) throw err;
      if(!myuser){
        //if user not found throw error
        res.json({success: false, message: 'Authentication failed. User not found.'});
      }else{
        // if user found, check if password matches
        if(myuser.password != req.body.password){
          //if password does not match throw error
          res.json({success: false, message: 'Authentication failed. Password mismatch.'});
        }else{
          //if password matches create token
          var token = jwt.sign(myuser, app.get('superSecret'), {expiresIn: 86400});
          //res.render('dashboard');
          res.send('Logged In')
        }
      }
    });
});

// API ROUTES -------------------
// we'll get to these in a second

// start the server
app.listen(port);
console.log('Listening to port ' + port);

當我登錄然后而不是顯示消息Logged In它給出Internal Server Error請幫助我解決問題。

端口8080是Tomcat Web Server的默認http端口。 您是否有機會運行Tomcat? 如果將端口更改為8080以外的其他端口,是否會出現相同的錯誤?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM