开发者社区> 问答> 正文

使用htmlunit实现带有Ajax复杂页面的静态化技术

mawenzhen98 2018-12-24 11:33:37 623

我使用htmlunit模拟测试时,发现没有拿到异步的数据,下边是我设置的htmlunit参数
WebClient mWebClient = new WebClient(BrowserVersion.CHROME);

    mWebClient.getOptions().setUseInsecureSSL(true);
    mWebClient.getOptions().setCssEnabled(true);
    mWebClient.getOptions().setActiveXNative(true);
    mWebClient.getOptions().setJavaScriptEnabled(true);
    mWebClient.getOptions().setThrowExceptionOnScriptError(false);
    mWebClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
    mWebClient.setAjaxController(new NicelyResynchronizingAjaxController());
    mWebClient.getOptions().setRedirectEnabled(true);
    mWebClient.getOptions().setTimeout(0);
    mWebClient.setJavaScriptTimeout(0); 
    mWebClient.waitForBackgroundJavaScript(0);
    HtmlPage mHtmlPage = mWebClient.getPage("http://localhost:8080/index.jsp");

经过测试发现ajax是支持的但是没有拿到数据,查看前端代码后发现前端代码中采用的是axios技术,而NicelyResynchronizingAjaxController()就是设置ajax由异步转成同步,那么axios该如何处理,还希望各位大侠给个指点。

分享到
取消 提交回答
全部回答(1)
  • wangccsy
    2019-07-17 23:23:39

    可否将前端页面代码也发上来。

    0 0

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程