尝试使用selenium htmlunit从javascript获取svg base64图像时出现javascript错误

时间:2017-12-04 19:38:50

标签: selenium selenium-webdriver htmlunit htmlunit-driver

在我的javascript中我将svg对象转换为base 64 使用

     var svg= svgObject;
    var serializer = new XMLSerializer();
    var svgString = serializer.serializeToString(svg);
    return new Blob([svgString], {type:"application/svg+xml"})

当我在浏览器中运行代码时,我能够正确地恢复base64。

然而,当我运行javascript代码时,在java中使用selenium-htmlunit, 使用:

ScriptResult result = page.executeJavaScript(javascriptfunction);

我在下面收到此错误:

Cannot find function isFinite in object function Number() { [native code] }.

如何解决此错误,以便在使用htmlunit执行该javascript后可以恢复base64图像?

1 个答案:

答案 0 :(得分:0)

使用当前的HtmlUnit代码进行了一些测试。函数Number.isFinite可用,工作正常。您使用的是最新版本?