在开发 chat.nvim 插件时,使用 curl 发送大 JSON 请求体可能会出现 ENAMETOOLONG 错误,这是因为命令行参数长度超过系统限制。解决方案是使用 -d @- 从 stdin 读取数据,避免将 JSON 数据直接作为命令行参数传递,从而支持更大数据量的传输,确保请求的稳定性和可靠性。建议开发者在实现 HTTP 客户端时一开始就采用此方法。
本文讨论了在使用阿里云百炼平台时,chat.nvim 插件在调用流式聊天补全接口时遇到的协议异常问题。具体表现为SSE流中夹杂未经封装的原始文本数据,导致客户端解析失败。问题源于服务端输出过程中混合了不同格式的数据,未正确封装Tool Call的参数。建议服务端修复输出路径并增加协议一致性测试,客户端需增加过滤逻辑以处理非法数据。
完成下面两步后,将自动完成登录并继续当前操作。