Morgan Logging - 是否可以从请求 header 中记录用户名?如何?
Morgan Logging - Is it possible to log User name from request header ? How?
app.use(morgan(function (tokens, req, res) {
console.log(req)
try {
let logData = {
morganLogStream: [
tokens['date'](req, res),
' Type-', tokens.method(req, res, 'Type'),
' Url-', tokens.url(req, res).split('?')[0],
' Status-', tokens.status(req, res),
' Content_Length-', tokens.res(req, res, 'content-length'),
' Response_Time-', tokens['response-time'](req, res), 'ms',
].join('')
}
}))
我正在使用带有 kerberos 的基本身份验证。我可以看到授权 header 但无法获取值。
我能做的最好的是:
new Buffer(req.headers.authorization.split(' ')[1], 'base64').toString('ascii').split(':')[0] : ''
哪个returns用户名。我希望 thr 是摩根图书馆中的任何直接选项。
app.use(morgan(function (tokens, req, res) {
console.log(req)
try {
let logData = {
morganLogStream: [
tokens['date'](req, res),
' Type-', tokens.method(req, res, 'Type'),
' Url-', tokens.url(req, res).split('?')[0],
' Status-', tokens.status(req, res),
' Content_Length-', tokens.res(req, res, 'content-length'),
' Response_Time-', tokens['response-time'](req, res), 'ms',
].join('')
}
}))
我正在使用带有 kerberos 的基本身份验证。我可以看到授权 header 但无法获取值。
我能做的最好的是:
new Buffer(req.headers.authorization.split(' ')[1], 'base64').toString('ascii').split(':')[0] : ''
哪个returns用户名。我希望 thr 是摩根图书馆中的任何直接选项。