fix(bioflow): 部署期 P1 双缺陷修复——context 值导入脱钩 init_context 重绑定(路由层动态取模块全局)+BFF 反代非 SSE 透传 bytes 500(改纯透传 Response)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-06 07:22:01 +08:00
co-authored by Claude Fable 5
parent 0c98b54b6a
commit 35bf6889a4
5 changed files with 34 additions and 25 deletions
+4 -3
View File
@@ -18,7 +18,7 @@ import logging
from typing import Any
from fastapi import APIRouter, Depends, Request
from fastapi.responses import JSONResponse, StreamingResponse
from fastapi.responses import JSONResponse, Response, StreamingResponse
from ..config import get_settings
from ..db import Database, get_db
@@ -96,9 +96,10 @@ async def _proxy(request: Request, path: str) -> Any:
payload, status = envelope("UPSTREAM_DOWN", message="生信服务响应中断",
degraded=True, status=502)
return JSONResponse(status_code=status, content=payload)
# 非 SSE:纯透传(content 是 bytes;不能 JSONResponse——bytes 序列化会 500)
media_type = upstream.headers.get("content-type") or "application/json"
return JSONResponse(status_code=upstream.status_code, content=content,
media_type=media_type)
return Response(status_code=upstream.status_code, content=content,
media_type=media_type)
# ---------------------------------------------------------------------------