- 请求中间件 - 在请求处理前执行
- 响应中间件 - 在响应处理后执行
- 异常中间件 - 在异常处理时执行
- 内置中间件 - 日志、安全、CORS、限流、健康检查
- 自定义中间件 - 支持自定义中间件
记录请求日志:
from litefs.middleware import LoggingMiddleware
app = (
Litefs(**config)
.add_middleware(LoggingMiddleware)
)安全防护中间件:
from litefs.middleware import SecurityMiddleware
app = (
Litefs(**config)
.add_middleware(SecurityMiddleware)
)跨域资源共享中间件:
from litefs.middleware import CORSMiddleware
app = (
Litefs(**config)
.add_middleware(CORSMiddleware)
)速率限制中间件:
from litefs.middleware import RateLimitMiddleware
app = (
Litefs(**config)
.add_middleware(RateLimitMiddleware)
)健康检查中间件:
from litefs.middleware import HealthCheck
app = (
Litefs(**config)
.add_middleware(HealthCheck)
)from litefs.middleware.base import Middleware
class CustomMiddleware(Middleware):
def process_request(self, request_handler):
# 在请求处理前执行
request_handler._start_time = time.time()
return None
def process_response(self, request_handler, response):
# 在响应处理后执行
duration = time.time() - request_handler._start_time
response.headers['X-Response-Time'] = f'{duration:.3f}s'
return response
def process_exception(self, request_handler, exception):
# 在异常处理时执行
print(f"Exception: {exception}")
return None中间件按照添加顺序执行,响应时逆序执行:
请求: 1 → 2 → 3 → Handler → 3 → 2 → 1
- 职责单一:每个中间件只做一件事
- 顺序配置:日志 → 安全 → 功能 → 特殊
- 错误处理:合理处理异常
- :doc:
routing-guide- 路由系统 - :doc:
configuration- 配置管理