refactor: 重构项目目录与代码结构,清理冗余文件
本次提交进行了大规模的项目结构调整: 1. 调整文件目录归属,将模块代码按功能域重新组织 2. 删除多处冗余的DTO、实体类和模块文件 3. 统一了常量、装饰器、工具类的存放位置 4. 修复了`.gitignore`的日志目录匹配规则 5. 新增了健康检查、认证、用户、剧集、订单等核心业务模块
This commit is contained in:
21
middleware/request-id.middleware.ts
Normal file
21
middleware/request-id.middleware.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { NextFunction, Request, Response } from 'express';
|
||||
import { validate as validateUuid, version as uuidVersion, v4 as uuidv4 } from 'uuid';
|
||||
|
||||
export function RequestIdMiddleware(
|
||||
request: Request & { requestId?: string; startTime?: bigint },
|
||||
response: Response,
|
||||
next: NextFunction,
|
||||
) {
|
||||
const incomingRequestId = request.get('x-request-id');
|
||||
const requestId =
|
||||
incomingRequestId &&
|
||||
validateUuid(incomingRequestId) &&
|
||||
uuidVersion(incomingRequestId) === 4
|
||||
? incomingRequestId
|
||||
: uuidv4();
|
||||
|
||||
request.requestId = requestId;
|
||||
request.startTime = process.hrtime.bigint();
|
||||
response.setHeader('X-Request-Id', requestId);
|
||||
next();
|
||||
}
|
||||
Reference in New Issue
Block a user