html - 在转义中仅转义特定标签

标签 html grails formatting xss

在我的应用程序中,用户将能够放置自己的内容。当然,我想保护我的应用程序免受XSS攻击。但是使用.encodeAsHTML()可以逃脱一切。我想让用户为他们的文本设置样式,所以我希望一些标签不转义,例如<b>, <i>, <u>。知道我该怎么做吗?也许有人已经做了类似的事情?我也考虑过BBCode样式格式-有人在grails上做过吗?

最佳答案

看一看jsoup,它使您可以将标签和属性列入白名单,但是可以清除HTML。

这是一个例子:

String escapeNonFormattingHTML(String unescaped) {
    def whitelist = Whitelist().simpleText() //allows b, i, u, em, strong
    return new Jsoup().clean(unescaped, whitelist)
} 

关于html - 在转义中仅转义特定标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5953842/

相关文章:

html - 防止 CSS 更改文本框占位符的大小

javascript - 如何在函数调用 javascript 中使用 var ejs

jQuery 获取调用该函数的项目并删除其父项

python - 在其一侧打印二叉树

c++ - 将 float 转换为字符串的最快 C++ 方法

css - 超链接不适用于 IE 或 Chrome 中的嵌入标签

Grails : Error generating web. xml 文件

grails - grails分页标记禁止访问方法

grails - Grails 的 InvokeDynamic

html - 在 XQuery HTML 输出中保留空格