【发布时间】:2015-12-30 00:23:01
【问题描述】:
我刚开始使用 freemarker 模板。我想确保它们是 HTML 转义以避免 XSS 漏洞。
我尝试使用此模板并将锚标记作为变量传递
String dummyAnchorTagVariable = "<a href='https://example.com'>Visit mysite</a>"
并在freemarker模板中使用
<div> ${dummyAnchorTagVariable} </div>
这样做的结果是看到整个文本,包括网页上的标签,而不是链接。所以我假设 freemarker 是 HTML 默认转义
但是当我尝试查找与之相关的文档时,我在任何地方都找不到说 Freemarker 是 HTML 默认转义的 http://freemarker.incubator.apache.org/docs/ref_directive_escape.html
甚至还有一篇博文(虽然很旧)描述了如何使其默认逃逸)http://watchitlater.com/blog/2011/10/default-html-escape-using-freemarker/
所以我对 Freemarker 中的 HTML 转义有点困惑。
【问题讨论】:
标签: html templates freemarker templating