前言
Koa2真的是个很轻量的框架,轻量到路由都作为了模块单独了出来,Koa2也没有日志功能,如果我们需要有一些请求的日志和时间,我们就需要引入日志中间件
下面话不多说了,来一起看看详细的介绍吧
引入时间格式化库MomentJS
安装MomentJS
npm install moment --save
简单格式化时间
使用YYYY-MM-DD HH:MM:SS代表 年-月-日 时-分-秒(24小时制)
console.log(Moment().format('YYYY-MM-DD HH:MM:SS'));
输出
2019-05-01 20:05:95
使用Koa2日志中间件
安装koa-logger
npm install koa-logger --save
如果需要使用TS,需要安装TS类型声明
npm install @types/koa-logger --save
简单使用koa-logger
const Koa = require("koa"); const Koa_Logger = require("koa-logger"); // 日志中间件const Koa_Router = require("koa-router");// 实例化const app = new Koa(); const logger = Koa_Logger(); const router = new Koa_Router();router.get("/",async (ctx)=>{ ctx.body = "Hellow Koa";});// 使用中间件 app.use(logger); // 日志输出app.use(router.routes()); // 路由// 启动appapp.listen(3000); // 设置监听端口// 启动标识console.log("Koa运行在:http://127.0.0.1:3000");
访问http://localhost:3000/,页面显示
控制台输出
给请求日志添加时间
改变一下logger的调用方式,加入moment格式化后的时间
const Koa = require("koa"); const Koa_Logger = require("koa-logger"); // 日志中间件const Koa_Router = require("koa-router");const Moment = require("moment");// 实例化const app = new Koa(); const logger = Koa_Logger((str) => { // 使用日志中间件 console.log(Moment().format('YYYY-MM-DD HH:MM:SS')+str);}); const router = new Koa_Router();router.get("/",async (ctx)=>{ ctx.body = "Hellow Koa";});// 使用中间件 app.use(logger); // 日志输出app.use(router.routes()); // 路由// 启动appapp.listen(3000); // 设置监听端口// 启动标识console.log("Koa运行在:http://127.0.0.1:3000");
分别访问http://localhost:3000/
、http://localhost:3000/?test
控制台输出如下
这样我们就有了一个带时间的请求日志了
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对VeVb武林网的支持。
注:相关教程知识阅读请移步到JavaScript/Ajax教程频道。