📜  一起使用 chalk 和 morgan - Javascript (1)

📅  最后修改于: 2023-12-03 14:48:46.828000             🧑  作者: Mango

一起使用 chalk 和 morgan - Javascript
简介

Chalk 是一款能够在终端输出彩色文字的Javascript库。而Morgan则是Express框架中的一个HTTP请求日志中间件。结合这两个库,我们可以在终端输出有色彩的、详细的HTTP请求日志。

安装

安装 chalk:

npm install chalk

安装 morgan:

npm install morgan
使用

使用 chalk 可以非常方便地在终端输出有色彩的文字。以下代码演示了如何使用:

const chalk = require('chalk');

console.log(chalk.blue('Hello world!'));

输出效果:

chalk_example

使用 morgan 中间件可以很方便地输出 HTTP 请求日志。以下代码演示了如何使用:

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

const app = express();
app.use(morgan('combined'));

运行代码后,在终端中可以看到类似下面的输出:

morgan_example

其中,有色彩的文字是由 chalk 输出的。

结合使用

结合 chalk 和 morgan 可以使 HTTP 请求日志更加易读,而且更加美观。以下代码演示了如何结合使用:

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

const app = express();
app.use(morgan(function(tokens, req, res) {
  return [
    chalk.bold(tokens.method(req, res)),
    chalk.magenta(tokens.url(req, res)),
    chalk.keyword('orange')(tokens.status(req, res)),
    chalk.grey(tokens['response-time'](req, res) + ' ms'),
  ].join(' ');
}));

运行代码后,在终端中可以看到类似下面的输出:

chalk_morgan_example

其中,HTTP 请求的方法、路径、状态码以及响应时间都被着色了。