使用DNode實(shí)現(xiàn)php和nodejs之間通信的簡(jiǎn)單實(shí)例
一、安裝DNode
1, for nodejs, 執(zhí)行
$ sudo npm install dnode
2, for php, 利用composer來安裝DNode php
執(zhí)行下列語(yǔ)句下載composer
創(chuàng)建一個(gè)文件composer.json,然后填入如下語(yǔ)句,
{
"require": {
"dnode/dnode": "0.2.0"
}
}
執(zhí)行如下語(yǔ)句安裝,
$ sudo php composer.phar install
二、利用nodejs創(chuàng)建簡(jiǎn)單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í)行服務(wù)器端
$ node server.js
五、執(zhí)行客戶端調(diào)用服務(wù)端程序
$ php client.php
這會(huì)調(diào)用服務(wù)器端的加法程序,然后輸出結(jié)果
n = 3300
- 基于html5和nodejs相結(jié)合實(shí)現(xiàn)websocket即使通訊
- Nodejs+Socket.io實(shí)現(xiàn)通訊實(shí)例代碼
- 學(xué)習(xí) NodeJS 第八天:Socket 通訊實(shí)例
- nodejs socket服務(wù)端和客戶端簡(jiǎn)單通信功能
- 使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
- 基于Nodejs利用socket.io實(shí)現(xiàn)多人聊天室
- 淺析nodejs實(shí)現(xiàn)Websocket的數(shù)據(jù)接收與發(fā)送
- nodejs+websocket實(shí)時(shí)聊天系統(tǒng)改進(jìn)版
- nodejs基于WS模塊實(shí)現(xiàn)WebSocket聊天功能的方法
- nodejs結(jié)合Socket.IO實(shí)現(xiàn)的即時(shí)通訊功能詳解
相關(guān)文章
Node.js成為Web應(yīng)用開發(fā)最佳選擇的原因
本篇文章給大家詳細(xì)分析了Node.js 成為 Web 應(yīng)用開發(fā)最佳選擇的十個(gè)原因,對(duì)此有需要的朋友參考下。2018-02-02
使用nodejs、Python寫的一個(gè)簡(jiǎn)易HTTP靜態(tài)文件服務(wù)器
這篇文章主要介紹了使用nodejs、Python寫的一個(gè)簡(jiǎn)易HTTP靜態(tài)文件服務(wù)器,分為nodejs和Python兩個(gè)版本,用類似淘寶的CSS、JS文件加載方式處理靜態(tài)文件加載,需要的朋友可以參考下2014-07-07
Google官方支持的NodeJS訪問API,提供后臺(tái)登錄授權(quán)
Google官方支持的NodeJS集成客戶端,用以訪問Google APIs, 支持OAuth 2.0授信及登錄認(rèn)證。登錄以后即可在后臺(tái)訪問例如 Google Drive(云存儲(chǔ)), Google Analytics, Gmail等服務(wù)。2014-07-07
如何使用axios庫(kù)在Node.js中進(jìn)行代理請(qǐng)求(實(shí)踐案例)
axios是一個(gè)強(qiáng)大的基于Promise的HTTP客戶端,它在瀏覽器和Node.js環(huán)境中均可使用,本文將介紹如何充分利用axios庫(kù),在Node.js中進(jìn)行代理請(qǐng)求的最佳實(shí)踐,并通過一個(gè)實(shí)際案例來展示其應(yīng)用,感興趣的朋友一起看看吧2024-03-03
詳解Node.js amqplib 連接 Rabbit MQ最佳實(shí)踐
這篇文章主要介紹了詳解Node.js amqplib 連接 Rabbit MQ最佳實(shí)踐,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01

