如何在php站点上的专用node.js服务器上使用Socket.io?
对于一个用PHP编写的web应用程序,我使用Socket.io提供了很多传统上使用AJAX的功能,比如实时聊天。为了在不影响Apache服务器的情况下使用Websocket,我让服务器运行node.js,专门用于Websocket连接。我打算使用DNode允许php脚本调用node.js Websocket函数。我该怎么做?如果可能,请提供一个简单的例子如何在php站点上的专用node.js服务器上使用Socket.io?,php,node.js,websocket,socket.io,dnode,Php,Node.js,Websocket,Socket.io,Dnode,对于一个用PHP编写的web应用程序,我使用Socket.io提供了很多传统上使用AJAX的功能,比如实时聊天。为了在不影响Apache服务器的情况下使用Websocket,我让服务器运行node.js,专门用于Websocket连接。我打算使用DNode允许php脚本调用node.js Websocket函数。我该怎么做?如果可能,请提供一个简单的例子 我意识到这可能不是最有效的结构,但由于大量连接同时利用实时功能,从PHP运行WebSocket将是非常服务器密集型的。我还知道还有其他方法可以
我意识到这可能不是最有效的结构,但由于大量连接同时利用实时功能,从PHP运行WebSocket将是非常服务器密集型的。我还知道还有其他方法可以实现服务器和客户端之间的实时通信,如长轮询和永久iFrame,但选择WebSocket背后有特定的原因。这是将数据从PHP发送到Node.js的另一种方法:
<?php
$ch = curl_init();
$data = array('name' => 'Foo', 'file' => '@/home/user/img.png');
curl_setopt($ch, CURLOPT_URL, 'http://localhost:8082/test'); /* Nodejs */
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
?>
我希望这会有所帮助。这是将数据从PHP发送到Node.js的另一种选择:
<?php
$ch = curl_init();
$data = array('name' => 'Foo', 'file' => '@/home/user/img.png');
curl_setopt($ch, CURLOPT_URL, 'http://localhost:8082/test'); /* Nodejs */
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
?>
我希望这会有帮助