草庐IT

socket_handle

全部标签

node.js - RabbitMQ vs Socket.io?

我正在开发实时实时网络应用程序。浏览器用户应该能够通过node.js服务器相互通信。一个用户写了一条消息,所有其他用户都会收到它。我不太明白RabbitMQ是如何工作的。但从快速阅读看来,它处理消息的发布/订阅。用户(在浏览器中)发布某些内容,而订阅者(在其他浏览器中)收到该消息。这不就是Socket.io对websocket所做的吗?这是我的问题:它们各自的优点/缺点是什么?Socket.io能否替代RabbitMQ?是否存在我需要RabbitMQ用于Socket.io无法满足的Web应用程序的场景? 最佳答案 更新Arether

node.js - engine.io 和 socket.io 有什么区别?

如果此问题重复,请纠正我。关于node.js,我使用socket.io进行从客户端应用程序到服务器应用程序的实时套接字连接。我刚听说engine.io,engine.io是socket.io的替代品吗?我在engine.io网站上找不到任何有用的信息提前致谢 最佳答案 engine.io是比socket.io低级的库。EngineistoSocket.IOwhatConnectistoExpress.如果您想要较低级别的抽象,请使用engine.io。如果你想要一个websocket抽象,请继续使用socket.io。如果您在soc

node.js - 某些软件包(sqlite3、socket.io)的 npm install 在 Windows 7 上失败并出现错误 MSB8020

当尝试在我的带有VisualStudio2012(而不是2010)的Windows7机器上使用npminstallsocket.io安装一些node.js包(特别是sqlite3和socket.io)时,我有一些看起来像这样的失败:C:\ProgramFiles(x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets(35,5):errorMSB8020:ThebuildstoolsforVisualStudio2010(PlatformToolset='v100')cannotbefound.Tobuil

node.js - socket.io - 如何在命名空间上广播消息?

根据socket.io示例:Tobroadcast,simplyaddabroadcastflagtoemitandsendmethodcalls.Broadcastingmeanssendingamessagetoeveryoneelseexceptforthesocketthatstartsit.vario=require('socket.io').listen(80);io.sockets.on('connection',function(socket){socket.broadcast.emit('userconnected');});我尝试将它与新的socket.ionams

javascript - Node.js、Cygwin 和 Socket.io 走进一家酒吧……Node.js 抛出 ENOBUFS,所有人都死了

我希望这里有人可以帮助我,我自己解决这个问题的运气并不好。我在Cygwin上运行node.js版本0.3.1。我正在使用Connect和Socket.io。我似乎在DNS或其他方面遇到了一些随机问题,我还没有完全弄清楚。最终结果是我的服务器运行良好,但是当浏览器尝试连接到它时,初始HTTP请求工作,Socket.io连接,然后服务器死掉(下面的输出)。我认为这与HTTP请求没有任何关系,因为服务器收到了很多发布给它的数据,并且它一直在接收请求并做出响应,直到我的连接杀死它。我用谷歌搜索了一下,我发现最接近的是DNS设置不正确。这是一个只能在内部网络上运行的网络程序,所以我将/etc/r

node.js - Socket.io + Node.js 跨域请求被阻止

我正在使用node和socket.io来编写一个聊天应用程序。它在Chrome上运行良好,但mozilla在启用跨域请求时出错。Cross-OriginRequestBlocked:TheSameOriginPolicydisallowsreadingtheremoteresourceathttp://waleedahmad.kd.io:3000/socket.io/?EIO=2&transport=polling&t=1401964309289-2&sid=1OyDavRDf4WErI-VAAAI.Thiscanbefixedbymovingtheresourcetothesamed

node.js - 在 socket.io 中与握手数据一起发送自定义数据?

所以我有一个运行nodejs的应用程序,其中socket.io作为后端,普通的javascript作为前端。我的应用程序有一个登录系统,目前只是让客户端在连接后立即发送其登录数据。现在我认为将登录数据与握手数据一起发送会更好,所以我可以直接让用户在连接时登录(而不是在建立连接后)分别在登录数据无效时拒绝授权.我认为最好将我的附加数据放在握手数据的标题部分中,所以有什么想法可以做到吗?(如果可能,不必修改socket.io,但如果这是我可以忍受的唯一方式) 最佳答案 正如许多评论指出的,Socket.IOAPI在其1.0版本中发生了更

node.js - 单元测试 Node.js 和 WebSockets (Socket.io)

谁能使用WebSockets(Socket.io)为Node.js提供坚如磐石、极其简单的单元测试?我将socket.io用于Node.js,并查看了socket.io-client以在测试中建立与服务器的客户端连接。但是,我似乎遗漏了一些东西。在下面的示例中,“worked...”永远不会被打印出来。vario=require('socket.io-client'),assert=require('assert'),expect=require('expect.js');describe('Suiteofunittests',function(){describe('First(ho

node.js - 获取 Socket.io 客户端的连接状态

我正在使用Socket.io,我想知道从客户端连接到服务器的状态。类似这样的:socket.status//returntrueifconnected,falseotherwise如果连接断开或因任何原因断开连接,我需要此信息向用户提供视觉反馈。 最佳答案 您可以检查socket.connected属性:varsocket=io.connect();console.log('check1',socket.connected);socket.on('connect',function(){console.log('check2',so

javascript - 使用集群将 Socket.IO 扩展到多个 Node.js 进程

用这个把我的头发扯掉...有没有人设法缩放Socket.IO到Node.js的cluster产生的多个“工作”进程模块?假设我在四个工作进程(伪)上有以下内容://ontheservervarexpress=require('express');varserver=express();varsocket=require('socket.io');vario=socket.listen(server);//socket.ioio.set('store',newsocket.RedisStore);//set-upconnections...io.sockets.on('connectio