用户可以输入稍后将显示给其他用户的HTML.我正在使用的WYSIWYG插件从前端清理HTML.它删除了所有潜在的恶意标签(脚本,src,以"on"等开头的任何东西)我显然也需要在后端进行一些验证.
有谁知道C#的好解决方案?我一直看到这个http://roberto.open-lab.com/2010/03/04/a-html-sanitizer-for-c/,虽然我有点犹豫是否使用随机博客中的一些代码.有没有众所周知的插件?大多数人在这种情况下做了什么?
您可以使用HtmlAgilityPack,它是一个维护良好的库,用于处理与HTML标记相关的所有内容.最佳实践是实现白名单,这是允许标记的列表.这个问题可能正是您所需要的:
HTML Agility Pack strip标签不在白名单中