我正在撰写一个新的grails 2.3.7应用程序,我正在尝试使用<%=%>避免html编码域类字段。
出于某种原因,grails忽略了这一点并且无论如何都要编码。
作为一个例子
<%="<h2>FOO</h2>"%>
只需渲染为
<h2>FOO</h2>
而不是预期的2级标题。
答案 0 :(得分:1)
这不是bug,而是Grails的自动XSS攻击预防。见http://grails.org/doc/latest/guide/security.html#xssPrevention
您想要做什么将输出标记为原始:
<%=raw("<h2>FOO</h2>")%>
但请注意,这应该非常小心,因为您可能会使您的应用程序面临XSS攻击的风险。