Морган устарел экспресс

Я изучаю nodejs прохождение учебника. Я столкнулся с проблемой, что учебник для более старой версии.

У меня есть этот код:

var express = require('express'),
    stylus = require('stylus'),
    logger = require('morgan'),
    bodyParser = require('body-parser');

var env = process.env.NODE_ENV = process.env.NODE_ENV || 'development';

var app = express();

function compile(str, path){
    return stylus(str).set('filename', path);
}

app.set('views', __dirname + '/server/views');
app.set('view engine', 'jade');
app.use(logger);
app.use(bodyParser.urlencoded({ extended: true }));
app.use(stylus.middleware(
        {
            src: __dirname + '/public',
            compile: compile
        }
    ));
app.use(express.static(__dirname + '/public'));


app.get('*', function(req, res) {
  res.render('index');
});

var port = 3131;
app.listen(port);
console.log('Listening on port ' + port + '...');

и когда я пытаюсь войти http://localhost:3131/ сайт перестает отвечать в браузере

Этот сайт не может быть достигнут

Соединение было сброшено.

в nodemon это говорит о том, что: введите описание изображения здесь

Если я удалю morgan все работает ок. Как я могу решить это?

2 ответа

Решение

Журналы ошибок показывают "Морган устарел формат по умолчанию: использовать комбинированный формат".

Это довольно просто, заменить

app.use(logger);

с

app.use(logger('combined'));

просто используйте app.use(morgan("dev)) и убедитесь, что вы поместили свой импорт morgan вверху вашего импорта ... он выдаст ошибку, если вы поместите его ниже импорта или для атрибута требуемых зависимостей ..

нравится:

      import express from "express";
import morgan from "morgan";

import postRoutes from "./routes/postRoutes.js";

если вы поместите свой импорт morgan под такими маршрутами,

      import express from "express";

import postRoutes from "./routes/postRoutes.js";
import morgan from "morgan";

он выдаст вам сообщение «Ошибка: прослушайте EADDRINUSE: адрес уже используется» ...

надеюсь, что это поможет кому-нибудь ...

Другие вопросы по тегам