Files
foka-ci/apps/server/middlewares/index.ts
2025-09-06 19:56:13 +08:00

33 lines
832 B
TypeScript

import { Router } from './router.ts';
import { Exception } from './exception.ts';
import { BodyParser } from './body-parser.ts';
import { Session } from './session.ts';
import { CORS } from './cors.ts';
import { HttpLogger } from './logger.ts';
import type Koa from 'koa';
import { Authorization } from './Authorization.ts';
/**
* 初始化中间件
* @param app Koa
*/
export function initMiddlewares(app: Koa) {
// 日志中间件需要最早注册,记录所有请求
new HttpLogger().apply(app);
// 全局异常处理中间件必须最先注册
new Exception().apply(app);
// Session 中间件需要在请求体解析之前注册
new Session().apply(app);
new CORS().apply(app);
new Authorization().apply(app);
// 请求体解析中间件
new BodyParser().apply(app);
new Router().apply(app);
}