diff --git a/app/api/routers/rbac_opc.py b/app/api/routers/rbac_opc.py index 6608644..cc322a7 100644 --- a/app/api/routers/rbac_opc.py +++ b/app/api/routers/rbac_opc.py @@ -223,7 +223,7 @@ async def opc_compute_base( user: dict = Depends(require_roles("opc_member")), ): """用户接入地址:经 server-core /v1 中继(OpenAI 兼容)。优先用公网配置,回落请求 host。""" - base = config.COMPUTE_PUBLIC_BASE or request.base_url.rstrip("/") + base = config.COMPUTE_PUBLIC_BASE or str(request.base_url).rstrip("/") base = base.rstrip("/") return { "base_url": f"{base}/v1", @@ -251,7 +251,8 @@ async def opc_compute_tokens(user: dict = Depends(require_roles("opc_member"))): data = await compute_client.list_user_tokens(user.get("username")) except compute_client.ComputeError as exc: raise HTTPException(status_code=502, detail=f"算力引擎对接失败: {exc}") from exc - return {"items": data.get("items", [])} + items = data if isinstance(data, list) else data.get("items", []) + return {"items": items} @router.post("/compute/tokens", summary="创建算力令牌")