大佬教程收集整理的这篇文章主要介绍了node.js – 尝试使用SocketIO和PHPws在服务器之间创建套接字,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<!DOCTYPE html> <html> <header> <title>SocketIO test</title> <script src="http://192.168.5.5:8000/socket.io/socket.io.js"></script> </header> <body> <script type="text/javascript"> var client = io.connect('http://192.168.5.5:8000'); client.on('connect',function() { console.log('connected'); }); client.on('raw',function(data){ console.log(data); }); client.on('state',function(data){ console.log(data); }); </script> </body>
但是,我需要实现的是更复杂一点.我需要使用Apache服务器来传输一些数据,然后才能到达客户端.下图显示了我尝试构建的内容:
为了实现我的目标,我尝试了几个用于PHP的WebSocket服务器和客户端库,直到找到PHPws,这看起来是我的方案的最佳解决方案.
所以,我阅读了这些示例,我测试了它们,一切顺利,直到我尝试使用以下代码连接到Rpi:
require_once("../vendor/autoload.PHP"); $loop = \React\EventLoop\Factory::create(); $logger = new \Zend\Log\Logger(); $writer = new Zend\Log\Writer\Stream("PHP://output"); $logger->addWriter($writer); $client = new \Devristo\PHPws\Client\WebSocket("ws://192.168.5.5:8000",$loop,$logger); $client->on("connect",function() use ($logger,$client){ $logger->notice("Or we can use the connect event!"); $client->send("Hello World!"); }); $client->on("raw",function($messagE) use ($client,$logger){ $logger->notice("Got message: ".$message->getData()); $client->close(); }); $client->open()->then(function() use($logger,$client){ $logger->notice("We can use a promise to determine when the socket has been connected!"); }); $loop->run();
我或多或少从Devristo的github那里拿走了@L_502_2@.
从服务器端,程序的执行不会引发任何错误或消息.
在节点中简单的socket.io服务器来检查
(成功)客户连接事件.
var io = require('socket.io')(1337); io.on("connection",function(socket){Console.log("[+] client",socket.id);})
使用Elephant.IO
我们设置客户端(Client Example for Socket.IO v2.0)
<?PHP use ElephantIO\Client; use ElephantIO\ENGIne\SocketIO\Version2X; require __DIR__ . '/vendor/autoload.PHP'; $client = new Client(new Version2X('http://localhost:1337',[ 'headers' => [ 'X-My-Header: websocket rocks','Authorization: Bearer 12b3c4d5e6f7g8h9i' ] ])); $client->initialize(); $client->emit('broadcast',['foo' => 'bar']); $client->close();
使用这个简单的客户端/服务器示例,当浏览器打开client.PHP时,您将在节点服务器中看到“on connection”事件
以上是大佬教程为你收集整理的node.js – 尝试使用SocketIO和PHPws在服务器之间创建套接字全部内容,希望文章能够帮你解决node.js – 尝试使用SocketIO和PHPws在服务器之间创建套接字所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。