基本上,您希望将 JavaScript 函数decodeURI()
应用于 morgan 记录的 url。
您可以通过这个小改动来定义自定义日志布局,例如“开发”布局。
为了方便您的情况,我们可以直接从文档中获取“开发”布局的详细信息。
所以,而不是app.use(morgan('dev'))
,只需使用:
morgan(function (tokens, req, res) {
return [
tokens.method(req, res),
decodeURI(tokens.url(req, res)), // I changed this from the doc example, which is the 'dev' config.
tokens.status(req, res),
tokens.res(req, res, 'content-length'), '-',
tokens['response-time'](req, res), 'ms'
].join(' ')
})
编辑:如果这不能正常工作,你可以使用,decodeURIComponent()
而不是decodeURI()
,根据这个问题:NodeJS Express 编码 URL - 如何解码