Mam skrypt phantomJS, który jest wykonywany za pośrednictwem wywołania exec()
w skrypcie node.js. Teraz muszę zwrócić ciąg znaków ze skryptu PhantomJS, aby mógł on zostać ponownie użyty w węźle.
Czy istnieje sposób, aby to osiągnąć?Przekazywanie wartości z PhantomJS do node.js
aplikacja Węzeł:
child = exec('./phantomjs dumper.js',
function (error, stdout, stderr) {
console.log(stdout, stderr); // Always empty
});
dumper.js (Phantom)
var system = require('system');
var page = require('webpage').create();
page.open(system.args[1], function (status) {
if (status !== 'success') {
console.log('Unable to access the network!');
} else {
return "String"; // Doesn't work
}
phantom.exit('String2'); //Doesn't work either
});
Dzięki, choć gdzie powinienem umieścić wywołanie JSON.stringify ('result')? po zwrocie lub jako parametrze metody wyjścia (próbowałem tylko i nie działa dla mnie) – silkAdmin
Właściwie nie musisz używać JSON, jeśli chcesz tylko przekazać ciąg znaków. Zalecam użycie JSON, ponieważ możesz chcieć więcej. Jeśli używasz PhantomJS do usuwania danych, możesz chcieć udostępnić wiele rzeczy. – 3on
OK dziękuję jeszcze raz, że rzeczywiście działa, co mnie myli, jest to, że wchodząc od strony przeglądarki, oczekiwałem, że console.log będzie tylko sposobem na zrzucenie informacji informacyjnych, a raczej sposób na zwrot rzeczy. – silkAdmin