Repository navigation
TinyChat v2.0.164 供应商密钥填错不再把用户踢出登录
修一个会直接把用户踢出登录的缺陷。
修复
- 供应商密钥填错不再导致前台自动退出登录:后台添加供应商时 API Key 填错,前端发消息会立刻被登出并跳回登录页。原因是上游对错误密钥返回 401,而本站的供应商代理把上游状态码原样透传;前端拿到 401 会按「登录已过期」处理 —— 清空本地令牌、吊销会话。现在所有来自上游的认证 / 权限 / 配额类状态(401/402/403)在回传前统一归一为 502(上游网关失败),错误原文仍然保留在提示里供排查;本站自身的「未登录」「额度不足」「无权限」判定不受影响,真正需要重新登录时该 401 依旧会发出。涉及对话(含流式)、生图、生视频与文档解析各条出站路径。
测试
- 新增
tests/upstream-status.php(上游 401/402/403 归一为 502、429/5xx 保持原样、字符串状态同样按整数判定)并接入 CI。 tests/e2e.sh新增「密钥错误的响应状态」一组:坏 Key 的对话 / 流式对话 / 生图都必须返回 502 而非 401,同时回归断言未登录与无效令牌仍是 401。