将请求从PHP脚本发送到Node.js脚本

时间:2016-08-24 11:26:36

标签: php node.js

有没有办法从PHP脚本向Node.js脚本发送任何类型的请求?

例如我有这个目录:

scripts
|_sender.php
|_receiver.js

我想从php脚本发送一些数据并使用node.js脚本读取它以执行某些操作。

这是如何正确完成的?

2 个答案:

答案 0 :(得分:1)

这取决于js将读取传入数据的位置

如果它是服务器,请使用node receiver.js启动它,然后从您的php发送到http://local主机/ ....无论您的服务器正在监听什么

或者你可以将你的php输出转储到一个文件中,并在

之后由接收者读取

您应提供更多信息以获得更好的答案

答案 1 :(得分:1)

我使用的最简单方法是使用HTTP post或get将PHP数据传递给节点,这是我的代码,用于将数据从PHP发送到节点。

// Node Side
express = require('express');
bodyParser = require('body-parser');
express.use(bodyParser.json());

express.post('/get_php_data', function (req, res) {
    // php array will be here in this variable
    var data = req.body.data;


    res.send(' Done ');
});

httpPost('NODE_URL:2200/get_php_data', array('data' => 'some data'));

// PHP Side
function httpPost($url,$params)
{
    $postData = http_build_query($params);
    $ch = curl_init();  

    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch,CURLOPT_HEADER, false); 
    curl_setopt($ch, CURLOPT_POST, count($postData));
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);    

    $output=curl_exec($ch);

    curl_close($ch);
    return $output;
}