感谢您对我的用例的帮助。我有一个 Servlet,它在 Apache Velocity 模板 (.vm) 文件中使用 javascript 呈现一些信息。
现在,在我将此模板返回给浏览器之前,我想将整个 HTML 存储到我需要从 .vm 模板访问整个 HTML 的本地文件系统中。我坚持做最后一步。
感谢您对我的用例的帮助。我有一个 Servlet,它在 Apache Velocity 模板 (.vm) 文件中使用 javascript 呈现一些信息。
现在,在我将此模板返回给浏览器之前,我想将整个 HTML 存储到我需要从 .vm 模板访问整个 HTML 的本地文件系统中。我坚持做最后一步。
Web 应用程序是客户端⟷服务器应用程序,这意味着客户端(即您的浏览器)和 Web 服务器之间有明确的分离。服务器与您在浏览器中看到的 HTML 之间没有直接连接。
尝试可视化该过程:
.vm
应该用于呈现响应的文件。.vm
文件由服务器上的 servlet 读取并呈现为 HTML 的字符串表示形式。Velocity 模板(或服务器上的任何其他代码)无法访问现在在浏览器中的 HTML,除非浏览器在另一个请求中将其显式发送回服务器。
你可以做的是:
click
事件的 JavaScript 代码。var html = document.getElementById('id_of_the_element').innerHTML;
XMLHttpRequest
,或者使用浏览器的原始 XHR 支持,或者使用您选择的 JS 框架。