Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import { Injectable, NestMiddleware } from '@nestjs/common'; import { Request, Response, NextFunction } from 'express'; import { randomUUID } from 'crypto'; @Injectable() export class CorrelationIdMiddleware implements NestMiddleware { use(req: Request, res: Response, next: NextFunction): void { const correlationId = (req.headers['x-correlation-id'] as string) || randomUUID(); const requestId = randomUUID(); const requestAny = req as any; requestAny.correlationId = correlationId; requestAny.requestId = requestId; res.setHeader('x-correlation-id', correlationId); res.setHeader('x-request-id', requestId); next(); } } |