PHP выполняет nodejs с другого сервера - PullRequest
0 голосов
/ 23 мая 2018

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

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

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

1 Ответ

0 голосов
/ 23 мая 2018

Множество способов справиться с этим.Самый простой и простой способ - настроить сервер на вашем (или целевом) компьютере, а затем просто передать запрос.Это позволит индивидуально контролировать скрипт узла и 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)
...