2017-02-10 3 views
1

Я задаю порт 30000, но приложение заканчивает прослушивание на другом порту.Приложение Node.js не прослушивает указанный порт

Это код, я использую:

var express = require('express'); 
var bodyParser = require('body-parser'); 
var path = require('path'); 

var app = express(); 

app.get('/', function(req, res) { 
    res.send('Hello World'); 
}); 

app.listen(30000, function() { 
    console.log('Server started on port %d', app.listen().address().port); 
}); 

порт приложение слушает получает установлено другое значение, когда он работает. Если я использую значение, которое он регистрирует на консоли в браузере, он работает правильно.

Спасибо большое!

ответ

2

Вы запускаете app.listen() дважды - второй раз в аргументе console.log.

Второй не имеет порта в качестве аргумента, поэтому выбирает случайный порт.

Изменить это:

app.listen(30000, function() { 
    console.log('Server started on port %d', app.listen().address().port); 
}); 

к:

var listener = app.listen(30000, function() { 
    console.log('Server started on port %d', listener.address().port); 
}); 
Смежные вопросы