PHP 从另一台服务器执行 nodejs

PHP execute nodejs from another server

我在 Web 上的共享主机上获得了一个 php 应用程序 运行ning。但是在我的个人电脑上有一个 nodejs puppeteer 脚本 运行 可以从只有我的用户有权限的网站中提取数据。 有没有办法让 PHP 应用程序 运行 nodejs 脚本,发送参数,等待结果并在完成后刷新页面?

我试过 exec,但没有用。

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

很多处理方法。最简单直接的方法是在您的(或目标)计算机上设置服务器,然后简单地传递请求。这将能够单独控制节点脚本和 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)