36 lines
969 B
Python
36 lines
969 B
Python
|
#!/usr/bin/env python
|
||
|
# -*- coding: utf-8 -*-
|
||
|
|
||
|
"""
|
||
|
中间件模块初始化文件
|
||
|
提供统一的中间件注册方法
|
||
|
"""
|
||
|
|
||
|
from fastapi import FastAPI
|
||
|
from fastapi.middleware.cors import CORSMiddleware
|
||
|
|
||
|
from middlewares.request_logger import register_middleware as register_request_logger
|
||
|
from middlewares.error_handlers import register_exception_handlers
|
||
|
from config.settings import settings
|
||
|
|
||
|
def register_middlewares(app: FastAPI):
|
||
|
"""
|
||
|
注册所有中间件到FastAPI应用
|
||
|
|
||
|
Args:
|
||
|
app: FastAPI应用实例
|
||
|
"""
|
||
|
# 添加CORS中间件
|
||
|
app.add_middleware(
|
||
|
CORSMiddleware,
|
||
|
allow_origins=settings.CORS_ORIGINS,
|
||
|
allow_credentials=settings.CORS_ALLOW_CREDENTIALS,
|
||
|
allow_methods=settings.CORS_ALLOW_METHODS,
|
||
|
allow_headers=settings.CORS_ALLOW_HEADERS,
|
||
|
)
|
||
|
|
||
|
# 注册请求日志中间件
|
||
|
register_request_logger(app)
|
||
|
|
||
|
# 注册异常处理器
|
||
|
register_exception_handlers(app)
|