前端获取后台json过程由于转义字符出现的问题
来源:互联网 发布:使命召唤ol辅助淘宝 编辑:程序博客网 时间:2024/06/11 00:34
数据库存储信息,特别是什么属性名称,由用户手动输入,通常会包含有一些特殊字符,比如说双引号,单引号,转义字符\等
取数据将其显示在页面上的时候,特别是当我们把这些信息以json的格式返回给页面,前端插件拿着json来加载一些结果,比如一棵树。
由于json格式是{"A":"XXXX"}的形式
那如果XXXX包含了双引号,单引号或者转义字符,那么从数据库获取的数据如果是想自己在后台拼凑成一个json字符串返回页面去加载的话肯定需要先处理一下,不然就会出现json解析失败的错误。
如果数据库保存的是双引号。那么后台取到的数据应该是\",所以我们要将这两个字符替换成\\\"
但是这里要注意,因为你是要将内容拼接到json字符串里,也就是说变成字符串的时候,也会将转义字符给转义,那么我们替换的那些工作就没用了
因此,这里需要再加一层转义:\\\" => \\\\\\\" 也就是每个字符前面都加个转义字符一遍。
所以我们拼接成的json就是"{\"A\":\"\\\\\\\"\"}";
将json字符串传递到前端,前端首先获取字符串的内容会转义一次:{"A":"\\\""}
然后将字符串转为json给前端组件使用。这时又转义一次:{"A":"\""}
最后前端组件要显示json的A字段"\""(它是个字符串),展示在页面上又转义了一次,于是拿到了双引号 "
以上就是前端获取后台json字符串的过程。
0 0
- 前端获取后台json过程由于转义字符出现的问题
- java后台对前端输入的特殊字符进行转义
- java后台对前端输入的特殊字符进行转义
- JSON需要转义的字符
- JSON 被转义的字符引发BUG问题
- ExtJS加载不到JSON数据的问题(转义字符)
- ExtJs 前端接受后台的JSON数据的编码问题
- 前端接收不到后台发来的JSON问题原因
- 前端:js转义符的妙用:解决 以0开头的字符串传值 以及 传值过程中会出现乱码的问题
- 异步获取json出现的小问题
- 转义字符的相关问题
- ORACLE 字符转义的问题
- javascript转义字符的问题
- iOS 去除JSON里的转义字符
- json带转义字符的处理方法
- 解析带有转义字符的json
- 返回的json双引号带有转义字符
- 解析带有转义字符的json
- An Overview of the Android Architecture (Android Studio)
- Apache JMeter
- CrossDomain.xml的作用及其简单用法
- 回环接口(loop-back/loopback)
- web前端面试准备
- 前端获取后台json过程由于转义字符出现的问题
- Docker持续部署图文详解
- CVAE-GAN 网络结构
- html5获取自己定位的方法
- u3d目标与摄像机之间的遮挡物变为透明
- mysql乱码问题
- ionic状态改变时动态(强制)刷新页面
- Android 访问权限Permission详解
- Android Broadcast timeout