基于 Flask 和 Vue 的前后端分离页面,后端使用富文本编辑器后保存的包含富文本的数据如何通过 JSON 接口传输。
目前想到的方案:
一个疑问:
1
jinksw 2019 年 7 月 9 日
不是很懂
你自己手动拼接的 json 吗? 那样才涉及你自己去转义吧? |
2
Mutoo 2019 年 7 月 9 日 A1:JSON 是一种跨语言的协议,所以规范里规定 key 以及 string 都用双引号包围。以更好的兼容不同语言的解释器。
至于你的问题,应该是如何正确将 HTML 文档存到字符串中。可以参考这篇文章: https://www.thorntech.com/2012/07/4-things-you-must-do-when-putting-html-in-json/ 前端 vue 可以用 v-html 直接引用这个字符串即可。但还需要考虑安全问题,防止 XSS。 https://github.com/vuejs/vue/issues/6333 |
3
zjyl1994 2019 年 7 月 9 日
嗯?你的 json 是手拼的?我们 json 都会自动处理转义啊?
|
4
icy37785 2019 年 7 月 9 日 via iPhone
json 的转义不都是自的么。你手拼的话容易出错呀,还是让他自动转吧。
|
5
mnssbe 2019 年 7 月 9 日 这时候可以用到“加密算法” base64 来解决你的烦恼
|
7
est 2019 年 7 月 9 日 富文本有多富?
一般空格换行直接 <pre> 梭哈就行了。 |
10
IsaacYoung 2019 年 7 月 9 日
{
html: "<div></div>" } |
13
zjyl1994 2019 年 7 月 9 日
@chenkeyan1 正常的 json 处理库都会自动转义的,不需要你自己操心
|
14
Asice 2019 年 7 月 9 日
感觉要发明个三引号,引号不够用
|
15
doublleft 2019 年 7 月 9 日
js 处理可以 split 一下 \r \n 这种的,起码换行就搞定了
|
16
est 2019 年 7 月 9 日
@chenkeyan1 那就<pre> 就行了。
|