灰色网站怎么做seo,自学网站建设作业,湖南至诚建设机械有限公司网站,wordpress天气背景
开始的时候#xff0c;发现一个很奇怪的现象
富文本编辑器#xff0c;前端存储带有的内容#xff0c;回显的时候解析就会出问题
后来发现#xff0c;其实是只要是需要带有\进行转义的内容就会有问题
排查
从前端提交数据#xff0c;后端获取数据#xff…背景
开始的时候发现一个很奇怪的现象
富文本编辑器前端存储带有的内容回显的时候解析就会出问题
后来发现其实是只要是需要带有\进行转义的内容就会有问题
排查
从前端提交数据后端获取数据到数据库存储数据再从数据库查询返回给前端这个过程
PS我这里的内容因为是一个动态表单所以是一个数组里面有一个富文本我省略了一些无关的数据
富文本的字段内容为 p a href\2\ target\_blank\12/a /p把动态表单arr进行JSON.stringify进行json一遍结果为p a href\\2\\ target\\_blank\\12/a /p然后前端进行post提交的时候作为body本身又会被json一次但是到了后端本身又会被parse一次所以这两次相互抵消然后会把p a href\2\ target\_blank\12/a /p这个存入数据库这里看起来和我们预期是一样的然后关键的来了存储到数据库之后变成了p a href2 target_blank12/a /p也就是这里丢失了转义导致查询返回给前端的时候变成了p a href\2\ target\_blank\12/a /p这里进行parse解析的时候报错了 我这里贴一下完整的测试数据let a [{id: 28,name: ,logo: ,arr: [{text:,content:p a href2 target_blank12/a /p}],create_time: 2024-06-14 11:05:23,},
];
JSON.parse(a[0].arr);解决方案
开始的时候本想通过mysql或者express之类的配置解决这个问题但是没有找到解决方案
最后用一个比较丑陋的方式解决的就是在存入数据库之前用替换的方式手动增加一个\这样的话相当于没丢
const realSql insertSql.replace(/\\/g, \\\\);如果有大佬有更好的方案欢迎留言