大公司是怎么做富文本编辑器过滤方案的?
我看到了sf上有类似的问题,但是解决不了我心中的疑问,所以我在这儿说一下我的情况。
目前我正在做一个富文本编辑器的解决方案,不仅仅是考虑前端,还包括后端的过滤处理。
一般的富文本编辑器在前端是会有一定的过滤的,但众所周知在前端做XSS攻击的过滤肯定是不充分的,这很容易被绕过。
目前的解决方案
- 前端:使用CKEditor的BBCode插件,用户输入的内容都是BBCode的。
- 后端(PHP):将剩下还存在的html标签转译掉
目前解决方案的问题
如果用户直接从别的地方粘贴一段内容放到CKEditor的富文本编辑器中(在使用BBCode插件的状态下),会发现格式全都乱掉。这是因为BBCode本身的表现力肯定不如HTML,而且这个BBCode的插件也是有bug的。
请问一般成熟的企业是怎么做的?
- 百姓网是没有富文本编辑的
- 百度贴吧感觉上也不是存HTML的。
那像淘宝店铺、或者微信公众平台的编辑器。 他们会通过一大堆复杂的过滤条件然后直接把过滤完的HTML存到数据库里吗?还是转成其他的格式保存?
补充一下:
我找到一个
HTML Purifier
的PHP库,我不知道是否适合我的应用场景,它会不会太重了?有了解这个库的朋友的话,希望告知一下。
猫心哈狼君
10 years ago