📜  nodejs 中的 morgan 是什么 - Javascript (1)

📅  最后修改于: 2023-12-03 15:03:15.911000             🧑  作者: Mango

Node.js 中的 Morgan 是什么

Morgan 是 Node.js 中一个流行的 HTTP 请求日志中间件,它能够记录 HTTP 请求和响应的详细信息,如请求时间、请求方式、请求 URL、响应状态码、响应内容长度等等。

安装

通过 npm 可以方便地安装 Morgan:

npm install morgan
使用

在应用程序中使用 Morgan 也非常简单。在 Express 框架中可以直接使用它提供的中间件:

const express = require('express');
const morgan = require('morgan');

const app = express();

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

Morgan 提供了多种预定义的日志格式,'combined' 是其中一种格式,它记录了最详细的信息。

你也可以自定义日志格式。以下是一个自定义格式的例子:

morgan.token('query', (req, res) => {
  return JSON.stringify(req.query);
});

app.use(morgan(':method :url :status :res[content-length] - :response-time ms :query'));

在这个例子中,我们使用 morgan.token() 方法自定义了一个 token,该 token 名称为 'query',它的值是查询参数对象的 JSON 字符串。在日志格式中,可以使用 ':query' 来引用该 token。

结束语

Morgan 是一个非常有用的 Node.js HTTP 请求日志中间件,它可以帮助我们更好地跟踪和分析应用程序的请求和响应。在应用中使用 Morgan 也非常简单,只需要引入它的模块并使用它提供的中间件。