You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Route middleware for Koa and Express that adds a request received high-resolution timer and Date to the request object using easily accessible Symbols to prevent request object pollution. Made for Cabin.
Route middleware for Koa and Express that adds a request received high-resolution timer and Date to the request object using easily accessible Symbols to prevent request object pollution. Made for Cabin.
Symbols are automatically added to ctx, ctx.req, and ctx.request objects in route middleware:
constKoa=require('koa');constkoaConnect=require('koa-connect');constrequestReceived=require('request-received');constresponseTime=require('response-time');constrequestId=require('express-request-id');conststartAt=Symbol.for('request-received.startAt');conststartTime=Symbol.for('request-received.startTime');constapp=newKoa();constCabin=newCabin();app.use(requestReceived);app.use((ctx,next)=>{console.log('startAt',ctx[startAt]);// `process.hrtime()`// [ 472542, 431456521 ]console.log('startTime',ctx[startTime]);// Date.now()// 1560499520000// note that the symbols are also accessible via:// ctx.req[startAt]// ctx.request[startAt]// ctx.req[startTime]// ctx.request[startTime]returnnext();});app.use(koaConnect(responseTime));app.use(requestId());app.use(cabin.middleware);app.listen();
Route middleware for Koa and Express that adds a request received high-resolution timer and Date to the request object using easily accessible Symbols to prevent request object pollution. Made for Cabin.