我如何返回摩根组合格式字符串
async function sample(){
const res = await axios.get("http://localhost:3000/sample")
const morganFormattedString = morgan('combined', {stream: {write: res => res }})
}
res 将是一个对象,我需要将res对象转换为下面由morgan内部完成的字符串
:: ffff:127.0.0.1--[18 /一月/ 2019:04:59:10 +0000]“ GET / sample HTTP / 1.1” 200 2“ http://localhost/”“ Mozilla / 5.0(linux )AppleWebKit / 537.36(KHTML,例如Gecko)jsdom / 11.12.0“
答案 0 :(得分:0)
morgan
返回服务器端中间件,该中间件应用于记录传入请求。您正在尝试使用它客户端记录外发请求,这不是其目的。对于您要完成的工作,axios-debug-log
应该可以,但是为了使其以combined
格式记录请求,您必须configure it yourself。
供参考,this is how morgan
currently defines the combined
log format:
morgan.format('combined', ':remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent"')