setUserAgent在HtmlUnit 2.28中不再可用?

时间:2017-10-26 18:30:59

标签: htmlunit

下面的代码在HtmlUnit 2.27中工作正常,但是在{2.2}中没有setUserAgent方法,现在设置useragent的正确方法是什么?

BrowserVersion bv = BrowserVersion.CHROME;
bv.setUserAgent(
        "Mozilla/5.0 (Linux; Android 6.0; XT1063 Build/MPBS24.65-34-4; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/59.0.3071.125 Mobile Safari/537.36");

1 个答案:

答案 0 :(得分:2)

从2.28开始,不再可能在浏览器版本中修改构建。这有很多原因,我们在邮件列表上讨论了可能的修复方法。

最后,我们使用工厂模式来设置新的浏览器配置,然后使它们不可更改。

final BrowserVersionBuilder myChromeBuilder = new BrowserVersion.BrowserVersionBuilder(BrowserVersion.CHROME);
// do your setup here
myChromeBuilder.setXXX(..);
final BrowserVersion myChrome = myChromeBuilder.build();

如果您愿意,也可以使用更流畅的代码

final BrowserVersion myChrome = new BrowserVersion.BrowserVersionBuilder(BrowserVersion.CHROME)
    // do your setup here
    .setXXX(..)
    .build();