python中json报错:json.decoder.JSONDecodeError: Invalid control character at: line 2 column 18 (char 19)
一、json.loads(json_data) 报错
1 | json.decoder.JSONDecodeError: Invalid control character at: line 2 column 18 (char 19) |
- 原因:json默认使用的是严谨格式,当跨语言传递数据时,就容易报出这个错误。
- 解决方法:加上参数 strict
json.loads(json_data, strict=False)
二、json.dumps(data) 将汉字转为unicode编码
- 原因:json默认会进行字符转换
- 解决方法: 添加 ensure_ascii 参数
json.dumps(data, ensure_ascii=False)
三、语法错误
1 | json.loads(json_data) 报错:json.decoder.JSONDecodeError: Invalid \escape: line 1 column 89 (char 88) |
- 错误原因:语法错误
- 解决办法
检查json_data 数据,是否包含非法字符,如反斜线‘\’, 将‘\’ 换为‘\\’
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用