跳转到内容

expected value at line 1 column 1 - Claude Code / Codex

Quick fix

升级到 cc-switch v3.14.1 或更高版本,以修复 Codex OAuth 强制返回 SSE 流导致的 JSON 解析失败问题。

报错原文
解析上游响应失败: expected value at line 1 column 1

当使用 Codex (ChatGPT Plus/Pro) 供应商(通过 OAuth 反代)时,上游接口 chatgpt.com/backend-api/codex/responses 会强制返回 SSE 流式响应,不受客户端 stream 参数的影响。

在 cc-switch v3.13.0 中,如果客户端(如 Claude Code 或 Codex)发送了非流式请求(stream: false),代理层虽然强制向上游发送了 stream: true,但响应处理侧(handle_claude_transform)并不知情,依然按照普通 JSON 格式去解析上游返回的 SSE 数据,从而触发了 expected value at line 1 column 1 的解析错误。

  1. 升级 cc-switch 到 v3.14.1 或更高版本。该版本已针对 Codex OAuth 组合强制使用 SSE 方式处理上游响应,并对非流式客户端做了聚合优化。

ToolClaude Code / Codex
Version3.13.0
PlatformsWindowsLinux
升级后如果仍然复现怎么办?
请确保已正确升级到 v3.14.1 或更新版本。如果问题依旧,请在 GitHub 上重新打开 issue 并附上最新的日志。
如何通过修改源码手动修复此问题?
在 src-tauri/src/proxy/handlers.rs 文件的 handle_claude_transform 函数中,将流式判断逻辑修改为 let is_stream = is_stream || api_format == "openai_responses";,强制对 openai_responses 走流式解析路径,然后重新编译。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。