UNPKG

mm_connector

Version:

这是超级美眉游戏连接器,用于连接客户端和服务端,实现前后端安全通讯。

70 lines (56 loc) 1.72 kB
// 格式化请求日志 function formatReq(ctx, resTime = new Date()) { var req = ctx.request; var logText = '\n======= request =======\n'; var method = req.method; // 访问方法 logText += '\n' + 'method: ' + method + '\n'; // 请求原始地址 logText += 'originalUrl: ' + req.originalUrl + '\n'; // 客户端ip logText += 'client ip: ' + req.ip + '\n'; // 开始时间 // var startTime; // 请求参数 if (method === 'GET') { logText += 'query: ' + JSON.stringify(req.query) + '\n'; // startTime = req.query.requestStartTime; } else { logText += 'query: ' + JSON.stringify(req.query) + '\n'; logText += 'body: ' + '\n' + JSON.stringify(req.body) + '\n'; } // 服务器请求时间 logText += 'req time: ' + resTime + '\n'; // 响应日志结束 logText += '\n======= request end =======\n'; return logText; } // 格式化响应日志 var formatRes = function(ctx, resTime = new Date()) { var logText = '\n======= response start =======\n'; // 响应状态码 logText += 'status: ' + ctx.status + '\n'; // 响应内容 // logText += 'body: ' + '\n' + JSON.stringify(ctx.body) + '\n'; // 服务器响应时间 logText += 'res time: ' + resTime + '\n'; // 响应日志结束 logText += '\n======= response end =======\n'; return logText; } /** * 应用 * @param {Object} server 服务 * @param {Object} config 配置参数 */ module.exports = function(server, config) { if (config.log) { server.use(async (ctx, next) => { if(ctx.path.indexOf(".") === -1){ $.log.httpLogger.info(formatReq(ctx)); } await next(); // $.log.httpLogger.info(formatRes(ctx)); }); } }