node.js — PHP выполняет nodejs с другого сервера

Я получил приложение php на общем хосте в сети. Но есть сценарий кукловода nodejs, который запускается на моем персональном компьютере для извлечения данных с веб-сайта, права которого есть только у моего пользователя.
Есть ли способ заставить приложение PHP запускать скрипт nodejs, отправлять параметры, ждать результата и обновлять страницу после того, как все будет сделано?

Я пробовал exec, но не работает.

exec("node server:80/jsFunction.js --test=", $test);

0

Решение

Много способов справиться с этим. Самый простой и простой способ — настроить сервер на вашем (или целевом) компьютере, а затем просто передать запрос. Это позволит индивидуально контролировать скрипт узла и php скрипт.

В вашем файле PHP вы можете просто использовать file_get_contents,

$text="some data to pass";
$homepage = file_get_contents("http://YOURPUBLICIPADDRESS:3000/?text=$text");
echo $homepage;

И на вашем узле api у вас может быть какой-то маршрут, который будет обрабатывать jsFunction оттуда, при условии, что это обещание, я, вероятно, могу использовать expressJS для его обработки.

var express = require('express')
var jsFunction = require('./jsFunction')
var app = express()

app.get('/', function (req, res) {
jsFunction(req.query.text).then(data=>res.send({data}))
})

app.listen(3000)
0

Другие решения

Других решений пока нет …