feat: general接口拦截器

This commit is contained in:
martsforever
2025-10-15 19:39:13 +08:00
parent b530cb95b7
commit 560c9743dc
7 changed files with 285 additions and 144 deletions
+10 -1
View File
@@ -1,8 +1,17 @@
import asyncio
import socket
import sys
import psutil
from app.config.env import env
# 在Windows平台上设置事件循环策略为WindowsSelectorEventLoopPolicy
if sys.platform == "win32":
from asyncio import WindowsSelectorEventLoopPolicy
asyncio.set_event_loop_policy(WindowsSelectorEventLoopPolicy())
def run_uvicorn():
import uvicorn
@@ -25,7 +34,7 @@ uvicorn.run() 启动了一个异步事件循环来处理 HTTP 请求,
因此,uvicorn.run() 之后的代码不会被执行,直到服务器关闭。
"""
# 启动Uvicorn服务器
uvicorn.run("app.server:app", host="0.0.0.0", port=port)
uvicorn.run("app.main_app:app", host="0.0.0.0", port=port)
# uvicorn.run之后的代码永远都不会执行
# 使用FastAPI的 @app.on_event("startup")装饰器可以在服务器成功启动后执行代码