0

在nodejs中使用morgan/express,如何以以下格式显示控制台输出:日/月/年:HH:MM:SS GET/POST“some-api-endpoint-path”?

我曾尝试使用“组合”格式,但没有取得多大成功。

4

1 回答 1

2

Morgan 有一个预定义令牌列表,您可以在此地址找到这些令牌。

在您的情况下,您想使用date,methodurl。因此,您的摩根设置将是:

app.use(morgan(':date :method ":url"'));

这应该足以让您了解它的基础知识并为您获得最佳的日志输出。

如果您想创建自己的令牌,则必须调用morgan.token(). 下面是username使用 Express 和 Passport 提供的 req.user 设置令牌的示例:

morgan.token('username', function (req, res) { 
    var username = req.user ? req.user.username: "Guest";
    return username;
});

这将使它可用作日志记录的令牌,您将能够调用:

app.use(morgan(':username :date :method :url'));
于 2019-02-20T00:13:49.907 回答