如何使用 SafeHTML 而不是字符串设置 GWT UiBinder 元素的内部 HTML?
我有由 UiBinder 创建的以下元素:
@UiField UListElement phones;
使用以下标记:
<ul ui:field="phones" class="contact section"></ul>
我之前一直使用方法 setInnerHtml(String) 来设置值。例如:
phones.setInnerHtml("<li><span class='title'>" + title +
"</span><div class='phone'><a href='tel:" + number + "'>" +
number + "</a></div></li>");
我现在想使用 SafeHtmlTemplates 来减少出现 XSS(跨站脚本)问题的可能性。使用 SafeHtmlTemplate,我现在取回 SafeHtml,我想将其粘贴到我的手机元素变量中。我该怎么做?我没有看到采用 SafeHtml 类型变量的方法。
I have the following element created by UiBinder:
@UiField UListElement phones;
With the following markup:
<ul ui:field="phones" class="contact section"></ul>
I had previously been using the method setInnerHtml(String) to set the value. For example:
phones.setInnerHtml("<li><span class='title'>" + title +
"</span><div class='phone'><a href='tel:" + number + "'>" +
number + "</a></div></li>");
I would now like to use SafeHtmlTemplates to reduce the possibility of having XSS (cross-site scripting) problems. Using a SafeHtmlTemplate, I now get back SafeHtml which I would like to stick into my phones element variable. How do I do this? I don't see a method that would take a SafeHtml type variable.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
要使用 SafeHtml,您必须坚持使用 GWT 小部件。更具体:
如果 Ui:Binder 应生成安全 html,则必须在模块 xml 中设置以下属性:
To use
SafeHtml
you have to stick to GWTs widgets. More specific:If Ui:Binder should generate safe html you have to set the following property in your module xml: