] => Array ( [message] => {"code":400, "reason":"CODEC", "message":"body unmarsh...
🚨 错误信息
依旧报错:Array ( [error] => Array ( [message] => {"code":400, "reason":"CODEC", "message":"body unmarshal proto: syntax error (line 1:191): unexpected token \"http://***/*** "metadata":{}} (request id: 20251022124159186908465KIJrRFnd) [type] => openai_error [param] => [code] => unknown_error ) )
🤖 AI解决方案
Array (
[error] => Array (
[message] => {"code":400, "reason":"CODEC", "message":"body unmarshal proto: syntax error (line 1:191): unexpected token \"http://***/*** \"metadata":{}} (request id: 20251022124159186908465KIJrRFnd)
[type] => openai_error
[param] =>
[code] => unknown_error
)
)
错误翻译
{"code":400, "reason":"CODEC", "message":"body unmarshal proto: syntax error (line 1:191): unexpected token \"http://***/*** \"metadata":{}} (request id: 20251022124159186908465KIJrRFnd)
- 中文翻译:
body unmarshal proto: 语法错误 (第 1 行第 191 列): 遇到意外的 token "http:/// " - 严格校验请求体结构:在发送 API 请求前,使用 Protocol Buffers 的 schema 定义对请求体进行预校验,确保其结构和数据类型正确。
- 分离数据类型:将非 Protocol Buffers 原生类型(如 URL)与 Protocol Buffers 结构体明确分离,或使用 API 提供的专门字段来承载这类数据。
原因分析
请求体(body)中的 Protocol Buffers 数据解析失败,因为在第 1 行第 191 列遇到了一个不符合协议定义的 token,很可能是一个 URL 字符串被错误地包含在 Protocol Buffers 的结构中。
解决方案
检查发送到 API 的请求体,确保其符合 Protocol Buffers 的定义。特别是移除或正确格式化 URL 字符串。如果 URL 是必需的,应将其作为独立的字段或通过其他 API 支持的方式传递,而不是直接混入 Protocol Buffers 的结构中。