服务器主程序
后端框架:FastAPI,提供 WebSocket 端点和 HTTP 静态服务
ASGI 服务器:Uvicorn,运行 FastAPI 应用
通信:WebSocket + JSON

完整请求流程

1. 浏览器发 HTTP GET 请求 → TCP 连接到 localhost:8000

2. Uvicorn 接收 TCP 连接,解析 HTTP 请求
→ 得到:方法=GET, 路径=/api/health

3. Uvicorn 调用 FastAPI 应用(ASGI 协议)

4. FastAPI 中间件链处理:
→ CORSMiddleware 检查来源(加 CORS 响应头)

5. FastAPI 路由匹配:/api/health → health_check 函数

6. 执行 health_check():
→ 计算 uptime
→ 返回 dict {"status": "ok", ...}

7. FastAPI 把 dict 序列化成 JSON

8. 中间件链反向处理(加 CORS 头)

9. Uvicorn 把响应封装成 HTTP 响应格式,通过 TCP 发回

10. 浏览器收到:200 OK + JSON 数据