繁体   English   中英

如何在php站点上的专用node.js服务器上使用Socket.io?

[英]How would I use Socket.io on a dedicated node.js server on a php site?

对于用PHP编码的Web应用程序,我提供了许多传统上会利用AJAX的功能,例如通过Socket.io进行实时聊天。 为了在不使Apache服务器紧张的情况下使用Websockets,我有专门针对Websocket连接运行node.js的服务器。 我打算使用DNode允许php脚本调用node.js Websocket函数。 我该怎么做? 如果可能,请提供一个简单的示例。

我意识到这可能不是最有效的结构,但是由于大量连接同时利用实时功能,因此从PHP运行Websockets将非常耗费服务器资源。 我还知道,还有其他方法可以实现服务器与客户端之间的实时通信,例如长轮询和永久iframe,但是选择Websockets背后有特定原因。

这是将数据从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);
?>

更多信息在这里

在app.js中

app.post('/test', function(req, res){
    console.log("name: " + req.body.name);
...

希望对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM