main.py 949 B

123456789101112131415161718192021222324252627
  1. # 1. 先创建 FastAPI 应用实例(只创建一次)
  2. from fastapi import FastAPI
  3. from fastapi.middleware.cors import CORSMiddleware # 导入 CORS 模块
  4. app = FastAPI() # 核心实例,只定义一次
  5. # 2. 配置 CORS(在注册路由前配置)
  6. app.add_middleware(
  7. CORSMiddleware,
  8. allow_origins=["http://localhost:5173"], # 允许前端 Vite 服务地址
  9. allow_credentials=True, # 允许携带 cookies
  10. allow_methods=["*"], # 允许所有 HTTP 方法(GET/POST等)
  11. allow_headers=["*"], # 允许所有请求头
  12. )
  13. # 3. 注册路由(必须显式挂载,否则路由不生效)
  14. from app.api import vector # 导入路由模块
  15. app.include_router(vector.router) # 将 vector 中的路由挂载到 app
  16. # 4. 启动服务(最后执行)
  17. if __name__ == "__main__":
  18. import uvicorn
  19. # 运行上面定义的 app 实例(已包含 CORS 和路由配置)
  20. uvicorn.run(app, host="0.0.0.0", port=8000)