You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复R调用API时出现lexical error: invalid char in json text错误

报错原因

你当前使用JSON解析函数fromJSON()处理响应内容,但API实际返回的是分号分隔的CSV格式数据,并非JSON格式。虽然响应头里content-type标注为application/json,但这属于API服务端配置错误,实际返回内容和声明的格式不匹配,因此JSON解析器读到CSV的分号分隔符时会识别为非法字符,抛出对应报错。

解决方法

无需再调用JSON解析逻辑,直接将响应的文本内容按分号分隔的CSV格式读取即可,示例代码如下:

# 第一步:提取响应的文本内容(XXX为你原来的响应对象)
response_text <- content(XXX, type = "text", encoding = "UTF-8")
# 第二步:读取分号分隔的CSV数据
## 方法1:使用base R自带函数(默认分号分隔、逗号为小数点)
df <- read.csv2(text = response_text)
## 方法2:使用readr包的通用分隔读取函数
library(readr)
df <- read_delim(response_text, delim = ";", show_col_types = FALSE)

如果读取出现乱码,可以根据实际情况调整encoding参数为对应编码(比如"GBK"等)。

内容的提问来源于stack exchange,提问作者Clara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 17:48:05