使用DNode實現php和nodejs之間通信的簡單實例
一、安裝DNode
1, for nodejs, 執(zhí)行
$ sudo npm install dnode
2, for php, 利用composer來安裝DNode php
執(zhí)行下列語句下載composer
創(chuàng)建一個文件composer.json,然后填入如下語句,
{
"require": {
"dnode/dnode": "0.2.0"
}
}
執(zhí)行如下語句安裝,
$ sudo php composer.phar install
二、利用nodejs創(chuàng)建簡單server程序, server.js
var dnode = require('dnode');
var server = dnode({
zing: function (n, cb) { cb(n * 100) }
});
server.listen(7070);
三、利用php創(chuàng)建客戶端程序client.php, 其中需要引用剛才安裝的dnode文件夾里面的文件autoload.php
<?php
// Connect to DNode server running in port 7070 and call
// Zing with argument 33
require 'lib/vendor/autoload.php';
// This is the class we're exposing to DNode
class Temp
{
// Compute the client's temperature and stuff that value into the callback
public function temperature($cb)
{
}
}
$loop = new React\EventLoop\StreamSelectLoop();
$dnode = new DNode\DNode($loop, new Temp());
$dnode->connect(7070, function($remote, $connection) {
// Remote is a proxy object that provides us all methods
// from the server
$remote->zing(33, function($n) use ($connection) {
echo "n = {$n}\n";
// Once we have the result we can close the connection
$connection->end();
});
});
$loop->run();
?>
四、執(zhí)行服務器端
$ node server.js
五、執(zhí)行客戶端調用服務端程序
$ php client.php
這會調用服務器端的加法程序,然后輸出結果
n = 3300
相關文章
node.js使用net模塊創(chuàng)建服務器和客戶端示例【基于TCP協(xié)議】
這篇文章主要介紹了node.js使用net模塊創(chuàng)建服務器和客戶端,結合實例形式分析了node.js使用net模塊實現TCP客戶端與服務器端通信的相關操作技巧,需要的朋友可以參考下2020-02-02
Nodejs 中的 Buffer 類的創(chuàng)建與基本使用
這篇文章主要為大家介紹了Nodejs中Buffer的使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
nodejs轉換音頻文件格式并壓縮導出zip格式(vscode語音插件開發(fā))
FFmpeg是一套開源的音視頻處理工具,通俗地講,可以對音視頻文件進行剪切、拼接、水印、轉碼等處理,這篇文章主要介紹了nodejs轉換音頻文件格式并壓縮導出zip格式(vscode語音插件開發(fā)),需要的朋友可以參考下2023-05-05

