记录一次数据中包含转义字符\引发的bug

后端返回给前端的数据是:

{

"bizObj": {

"current": 1,

"orders": [

],

"pages": 2,

"records": [

{

"from": "1d85b8a4bd33aaf99adc2e71ef02960e",

"fromName": "ddd",

"id": "742836e8f3d00a6e2ebd568f3a2dd75e",

"img": "/net-hospital-admin/images/boy.png",

"msgTime": "2024-01-10 17:04:04",

"msgType": "10",

"text": "{\"medicalRecordId\":\"59a2827da4a54d5ba0eea13ad725eef4\",\"recordNum\":\"2024010215321313590002\",\"topicId\":\"01b79d7931d34a9c8d5a5f3e36681137\",\"createTime\":\"2024-01-02 15:32:13\",\"handlingOpinion\":\"null\",\"diagnosis\":\"人类免疫缺陷病毒\\HIV\\\\病造成的其他传染病和寄生虫病\",\"mainStatement\":\"ing倪敏破狗肉\",\"name\":\"asdfafd\",\"doctorName\":\"asdfads\",\"orgName\":\"asdfsaf\"}",

"type": "0"

}

],

"searchCount": true,

"size": 8,

"total": 14

},

"retCode": "0000",

"retMsg": "处理成功",

"timestamp": "1704878596839"

}

其中 text的内容{\"medicalRecordId\":\"59a2827da4a54d5ba0eea13ad725eef4\",\"recordNum\":\"2024010215321313590002\",\"topicId\":\"01b79d7931d34a9c8d5a5f3e36681137\",\"createTime\":\"2024-01-02 15:32:13\",\"handlingOpinion\":\"null\",\"diagnosis\":\"人类免疫缺陷病毒\\HIV\\\\病造成的其他传染病和寄生虫病\",\"mainStatement\":\"ing倪敏破狗肉\",\"name\":\"asdfasd\",\"doctorName\":\"asdfdsa\",\"orgName\":\"asdfdas\"}

需要转成对象来用 这里转不了 是因为diagnosis的数据中\\HIV\\\\ 有转义字符造成的

原始数据是带有一个转义字符 \HIV\\ 返回给前端是\\HIV\\\\

转换不了的原因是因为text的内容是自己拼接的json字符串

也就是把这个内容 \HIV\\ 直接拼到json字符串中,这个是错误的,因为实际上真正变成json字符串是要变成 \\HIV\\\\ 多一个转义字符

最后返回给前端的时候应该是要变成 \\\\HIV\\\\\\\\

{\"medicalRecordId\":\"59a2827da4a54d5ba0eea13ad725eef4\",\"recordNum\":\"2024010215321313590002\",\"topicId\":\"01b79d7931d34a9c8d5a5f3e36681137\",\"createTime\":\"2024-01-02 15:32:13\",\"handlingOpinion\":\"null\",\"diagnosis\":\"人类免疫缺陷病毒\\\\HIV\\\\\\\\病造成的其他传染病和寄生虫病\",\"mainStatement\":\"ing倪敏破狗肉\",\"name\":\"asdfsdf\",\"doctorName\":\"asdfdsaf\",\"orgName\":\"asdfdas\"} 这样才是正确的

原始拼接json字符串的方式 手动拼接

正确方式

用map去封装对象 然后转成json字符串

相关推荐
callJJ11 小时前
Volta + Claude Code 在 Windows 上的路径 Bug 复盘
windows·bug
xsc-xyc16 小时前
记一次RK3568搭建NAS BUG:开发板插上 USB 移动硬盘没反应
bug
放风铃的兔子2 天前
我把 5 个 Python bug 投进 CubeSandbox 当沙盘 —— 从 envd 协议反编译到一键 RED→GREEN
bug·issue
zh_xuan3 天前
诡异Bug:输入框删除字符,却越删越多
android·bug
绘梨衣5473 天前
采集基类设计遇到的描述符bug
爬虫·python·bug
不吃鱼的羊3 天前
达芬奇工具Bug
bug
油炸自行车4 天前
【bug】Qt 6 Q_NAMESPACE 跨 DLL 链接错误:LNK2019 无法解析 staticMetaObject
数据库·c++·qt·bug·link2019·q_namespace_exp·namespaceexport
sxd20015 天前
Debian #1135514 bug引发的思考
网络·debian·bug
疏狂难除6 天前
X86-64 Assembly中printf 打印 float 和 double的bug的解决
bug·assembly
nashane8 天前
HarmonyOS 6学习:指南针“文图反向”Bug修复——从“北偏东”变“北偏西”的坐标系纠错
学习·华为·bug·harmonyos