zoukankan      html  css  js  c++  java
  • 采用Json字符串,往服务器回传大量富文本数据时,需要注意的地方,最近开发时遇到的问题。

    json字符串中存在常规的用户输入的字符串,和很多的富文本样式标签(用户不能直接看到,点击富文本编辑器中的html源码按钮能看到),例如下面的:

    <p><strong>富文本&lt;&gt;sad&lt;span&gt;adzx我是用户输入</strong></p>

    <p><span><span style="font-family:微软雅黑, &#39;microsoft yahei&#39;;">富文本&lt;&gt;sad&lt;span&gt;adzx我是用户输入</span><br /></span></p>

    例如存在这种情况,需要把上面的这段字符串通过一个json格式,post到服务器端,假设这段字符串被赋给变量a :

    post的参数的结构是这样的:

    { "params": { "content": a }}

    有个前提是,往后端post的文本内容,是需要包含富文本样式的,这也就是为什么要使用富文本编辑器的目的。

    可以注意到,上面的字符串中,黑色加粗部分,富文本编辑器会自动进行encodeHTML操作,也就是常规的用户输入的字符串,而红色细字部分是属于富文本样式标签部分。

    样例中,富文本区域包含:<span style="font-family:微软雅黑, &#39;microsoft yahei&#39;;">这种字符串,由于采用的json格式向后端post数据,所以需要注意转义这里面的双引号",否则会引起后端解析json出错,所以做了一下转义,把单个双引号变成了 \\\" 这种形式(因为还涉及到encodeURI和decodeURI的操作)。

    同时,用户也可能会输入单个的或多个的\反斜杠(转义符),所以又对它做了同样的转义处理,把单个的反斜杠,变成了 \\\\ 这种形式。

    归根到底是采用了json这种方式来向服务器post大量的数据(富文本数据),所以涉及到双引号和反斜杠这两个特殊字符的处理。



  • 相关阅读:
    MySQL基础
    MySQL约束
    firefox插件hostadmin自由切换host
    ITerm2下使用ssh访问Linux
    web优化(一 前端)
    php类的魔术方法也就是带下划线的类方法介绍及应用
    数据库水平切分的实现原理(分库,分表,主从,集群,负载均衡)
    三年以上php开发经验常见面试题
    php海量架构
    一个高级PHP工程师所应该具备的(转自元如枫博客)
  • 原文地址:https://www.cnblogs.com/catprayer/p/2716962.html
Copyright © 2011-2022 走看看