• 采用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大量的数据(富文本数据),所以涉及到双引号和反斜杠这两个特殊字符的处理。



  • 相关阅读:
    leetcode(4) Median of Two Sorted Arrays
    logisitic回归
    共识算法 pos,Dpos
    solidity合约详解
    solidity中的memory和 storage详解
    win10下搭建私链
    区块链学习(7) 共识
    区块链学习(6)区块链
    区块链学习(5)比特币网络
    区块链学习(4)交易(二)
  • 原文地址:https://www.cnblogs.com/catprayer/p/2716962.html
Copyright © 2020-2023  润新知