node.js - console.log не работает

Я не вижу сообщений console.log () из функций отдыха.

http.listen(port, ip, function(){
console.log('Express server started on port %s', http.address().port);});

В http.listen () я могу видеть журналы, как и ожидалось, но когда я вызываю другие функции отдыха, например:

app.get('/aaa', function (req, res, next) {
res.send('hello world');
console.log('hello')});

он не пишет никаких журналов, но возвращает "hello world".

когда я запускаю его локально на своем компьютере, я вижу журналы, но когда я развертываю его, проблема возникает снова. Я также пытался писать журналы с api "fs", но он все равно не работает.

есть идеи, почему res.send () работает, а console.log () - нет?


person devops    schedule 18.09.2015    source источник
comment
Как вы запускаете свой сервер при развертывании кода? Он где-то выводится, у вас, вероятно, просто нет доступа к стандартному выводу этого процесса   -  person edi9999    schedule 18.09.2015
comment
поместите console.log перед res.send ... res.send должен быть последним оператором в ваших функциях-обработчиках ....   -  person    schedule 18.09.2015
comment
Это неправда. См. Узел stackoverflow.com/questions/16180502/   -  person Dan D.    schedule 18.09.2015
comment
Проблема связана с тем, где он развертывается. Но вы ничего не сказали нам об этом и не привели минимального воспроизводимого примера   -  person Dan D.    schedule 18.09.2015


Ответы (2)


app.listen вместо http.listen исправил.

person devops    schedule 22.09.2015

Вы можете попробовать поставить console.log (...) перед res.send. Я думаю, что res.send () - это конечный пункт назначения запроса, а затем процесс выхода после этого.

person thelonglqd    schedule 23.12.2015