gpt4 book ai didi

javascript - JSF 中的 HTML 内容呈现

转载 作者:行者123 更新时间:2023-11-28 01:48:32 25 4
gpt4 key购买 nike

我有两个字段:输入和输出。在输入中,我正在编写 html 代码,按下按钮并在输出字段中查看渲染的代码。

   <h:form id="displayForm">
<p:commandButton value="Execute" actionListener="#{screenController.executeCode}" update="displayForm:output"/>
<h:inputTextarea value="#{screenModel.input}" rows="20" cols="165"/>
<br/>
<h:outputText id="output" value="#{screenModel.output}" escape="false"/>
</h:form>

但是,当我写下

<script>
document.write("1")
</script>

所有页面均已呈现。我完全不了解java脚本,但我有想法。我可以替换某些代码上的文档,而不是仅在“输出”字段上进行渲染。我怎样才能做到这一点?

最佳答案

在独立页面中打印它,您可以通过 <iframe> 显示该页面.

无论采用哪种方法,将用户控制的输入重新显示为未转义的 HTML 都会打开一个空白 XSS attack你的服务器上有漏洞。您不希望最终用户能够在您的服务器上完全不受控制地运行 JavaScript。使用一些 HTML 清理工具(如 Jsoup)清理所有潜在的恶意 HTML 标签和属性。 .

关于javascript - JSF 中的 HTML 内容呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20008935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com