【发布时间】:2015-10-03 14:09:42
【问题描述】:
gargoyle 软件库是否支持 Websocket?我想在 webclient 中获取 websocket 对象。
【问题讨论】:
标签: java htmlunit web-client
gargoyle 软件库是否支持 Websocket?我想在 webclient 中获取 websocket 对象。
【问题讨论】:
标签: java htmlunit web-client
是的,WebSocket 从 2.11 版开始受支持。但是,始终建议使用最新版本。
请确保您在最近的浏览器中使用BrowserVersion,例如CHROME、FIREFOX_38 或 INTERNET_EXPLORER_11。
例如:
try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) {
HtmlUnit 将自动处理带有 WebSocket 的 JavaScript。
更新:
要拦截请求和响应,您可以使用:
new WebConnectionWrapper(webClient) {
public WebResponse getResponse(WebRequest request) throws IOException {
WebResponse response = super.getResponse(request);
if (request.getUrl().toExternalForm().contains("my_url")) {
String content = response.getContentAsString("UTF-8");
//change content
WebResponseData data = new WebResponseData(content.getBytes("UTF-8"),
response.getStatusCode(), response.getStatusMessage(), response.getResponseHeaders());
response = new WebResponse(data, request, response.getLoadTime());
}
return response;
}
};
【讨论】: