0

我想做一个代理网站。当用户请求 URL 时。在服务器端,我想请求 url 并创建一个包含页面详细信息(html 源、请求响应等)的对象

我发现htmlunit可以满足我的要求。
我想将 htmlunit 对象的响应传递给用户浏览器。
(如果可能的话作为ModelAndView(Spring)。)如何实现?

@Test
public void getElements() throws Exception {
final WebClient webClient = new WebClient();
final HtmlPage page = webClient.getPage("http://some_url");
//I wanted to pass the "HtmlPage" to user's browser.
}
4

1 回答 1

0

这不是 Spring 的工作方式。ModelAndView对象是名称ViewModel. 该View名称与 a 结合使用ViewResolver以呈现响应。Model用于保存渲染过程中可能需要的属性。

如果要返回单独的 HTTP 请求/响应的内容,则需要执行 HTTP 请求,获取响应正文并将其流式传输到 HTTP 响应。按着这些次序

  1. 对您的应用程序的 HTTP 请求
  2. 您的处理程序方法被调用
  3. 您使用 HTTP 客户端向某个 URL 发送新的 HTTP 请求
  4. 您从该 URL 获得 HTTP 响应
  5. 您将该响应流式传输到您的 HTTP 响应。
于 2013-10-06T16:52:48.917 回答