Files
nanocode/urinecheck/backend/app.py
T
Ubuntu 32b43f85bd a
2026-07-03 16:58:28 +08:00

64 lines
1.3 KiB
Python

"""
尿检识别系统后端 - FastAPI
"""
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from database import engine, Base, SessionLocal
from routers import auth, urinecheck
from routers.auth import init_admin
# 创建数据库表
Base.metadata.create_all(bind=engine)
# 初始化默认管理员
db = SessionLocal()
init_admin(db)
db.close()
app = FastAPI(
title="尿检识别系统 API",
description="尿检试纸颜色识别后端API",
version="1.0.0",
redirect_slashes=False
)
# CORS配置
app.add_middleware(
CORSMiddleware,
allow_origins=[
"http://localhost:8905",
"http://localhost:3000",
"http://127.0.0.1:8905",
"http://0.0.0.0:8905",
"http://129.211.173.87:8905", # 尿检前端
"http://129.211.173.87:9000", # SSO 中心
],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
# 注册路由
app.include_router(auth.router)
app.include_router(urinecheck.router)
@app.get("/")
def root():
return {
"message": "尿检识别系统 API",
"version": "1.0.0",
"docs": "/docs"
}
@app.get("/api/health")
def health_check():
return {"status": "ok"}
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8904)