Как я могу сделать обратный вызов обратно в Java-код из .executePhantomJS ("script", args)? - PullRequest
0 голосов
/ 06 февраля 2019

Я использую модифицированный сценарий rasterize.js от PhantomJS для преобразования html-контента в pdf в коде java следующим образом:

PhantomJSDriver driver = new PhantomJSDriver();
driver.executePhantomJS("\"use strict\";\n" + 
    "var page = require('webpage').create(),\n" +
            .
            .
            .
    "   page.open(address, function (status) {\n" +
    "        if (status !== 'success') {\n" + 
    "            console.log('Unable to load the address: ' + address);\n" + 
    "        } else {\n" + 
    "            window.setTimeout(function () {\n" + 
    "                page.render(output);\n" + 
    "                console.log('done');\n" +
                    --- HERE I NEED TO CALL SOME CALLBACK BACK TO JAVA ---
    "            }, arguments[0]);\n" + 
    "        }\n" + 
    "    });"
, 200);  

// this can be called after page is rendered in script above
driver.quit(); 

Когда страница отображается в файл .pdf, мне нужно как-то продолжитьв коде Java, с некоторым обратным вызовом, я думаю, но я не знаю, как это сделать.

Спасибо за любой ответ.

...