Tag: websocket

如何在socket.io中configuration重新连接?

我用下面的代码创buildsocket.io连接 var socket = new io.connect('http://localhost:8181', { 'reconnect': true, 'reconnection delay': 500, 'max reconnection attempts': 50 }); 但是当我杀死服务器CTRL + C并重新启动时,重新连接不会发生。 但在客户端引发断开事件。 这可能是什么原因?

Chrome和Safari恢复到xhr轮询,而不是与socket.io的websockets

我有一个websockets和socket.io的问题。 当我尝试使用socket.io连接到我的节点服务器时,它最初使用websockets连接,但在不久之后恢复为jsonp-polling。 这是我连接时节点服务器的输出: 8 Jun 07:01:15 – Initializing client with transport "websocket" 8 Jun 07:01:19 – Initializing client with transport "jsonp-polling" 8 Jun 07:01:19 – Client 16630339180119336 connected 这发生在Chrome浏览器和Safari。 我已经更新到最新的socket.io版本0.6.17,并运行节点0.4.7。 我曾尝试删除我的cookie和cachingbuild议在github和SO,但问题依然存在。 此外,当我尝试强制websockets它永远不会完全连接到一个会话ID。 有没有人有任何想法?

Socket.io和Heroku上的多个Dyno Node.js应用程序。 WebSocket在连接build立之前closures

我正在构build一个部署到使用Websockets的Heroku的App。 当我只使用1个dynamic码时,websockets连接正常工作,但当我缩放到大于1时,出现以下错误 POST http://****.herokuapp.com/socket.io/?EIO = 2&transport = polling&t = 1412600135378-1&sid = zQzJJ8oPo5p3yiwIAAAC 400(Bad Request)socket.io-1.0.4.js:2 WebSocket连接到'ws://****.herokuapp.com/socket.io/?EIO = 2&transport = websocket&sid = zQzJJ8oPo5p3yiwIAAAC'失败:WebSocket在连接build立之前closures。 socket.io-1.0.4.js:2 我正在使用Redis适配器来启用多个Web进程 var io = socket.listen(server); var redisAdapter = require('socket.io-redis'); var redis = require('redis'); var pub = redis.createClient(18049, '[URI]', {auth_pass:"[PASS]"}); var sub = redis.createClient(18049, '[URI]', {detect_buffers: true, auth_pass:"[PASS]"} ); io.adapter( redisAdapter({pubClient: pub, subClient: sub}) […]

通过与faye的websockets发送一个JavaScript对象

大家好我试图通过websockets发送一个JavaScript对象: faye-websockets文档说: 发送(消息) 接受一个string或缓冲区,并通过连接发送文本或二进制消息到另一个对端。 服务器端我使用节点和faye。 var WebSocket = require('faye-websocket'); var http = require('http'); var server = http.createServer(); server.addListener('upgrade', function(request, socket, head) { var ws = new WebSocket(request, socket, head); ws.send({topic:'handshake', data:'sdf487rgiuh7'}); }); server.listen(8000); 客户端: <script> var ws = new WebSocket('ws://localhost:8000'); ws.onmessage = function(e) { console.log(e.data); //prints [Object object] string and not the object }; </script> […]

如何获取Node.js中的WebSocket(websockets / ws)库的客户端IP地址?

我找不到客户端对象上的客户端IP参数。

Android到node.js的通信

我看到有几个类似的线程,但我找不到我的答案。 我正在做和Android应用程序,我想使用节点作为实时通信的服务器。 我真的无法得到这个工作。 也许我做了很多很多错误的事情,但我想尝试理解。 我的服务器很简单 var http = require('http'), io = require('socket.io'), server = http.createServer(function(req, res){ res.writeHead(200, {'Content-Type': 'text/html'}); res.end(':)'); }); server.listen(8080); var socket = io.listen(server); socket.on('connection', function(client){ client.send("hello"); console.log("connected!"); }); 和这个作品…我尝试了一个Web应用程序,我可以连接。 但是我不能用java 我试过kryonet,但我得到一个exception,如“连接,但注册超时” 我试过weberknecht我得到一个“错误,同时创build套接字ws://184.xxxxxx:8080” 我尝试了TooTallNate ,没有运气,只是调用onClose方法。 我试过jWebSocket,但我不能得到它的工作… 所以我在这里,寻求帮助,有没有人知道如何做到这一点? 有什么build议? PS TooTallNate我使用这样的东西: Net net = new Net(new URI("ws://184.xxxxxx:8080"),WebSocketDraft.DRAFT76); 问题可能在这里吗? 更新:我处理了这个! 经过一个良好的睡眠,我有了这个想法,我使用socket.io,坏主意…现在我使用节点Websocket服务器与weberknecht 。 服务器如下所示: var ws […]

socket.io客户端不接收来自服务器的消息

我试图用两个客户端来实现一个系统,其中一个发送一个消息,另一个接收它。 下图将以更直观的方式解释它: 因此,客户端1将消息发送到服务器(并且这是有效的),服务器接收到“推送”消息并发出应该由客户端2拾取的“popup”消息。这里的问题是客户端2从不接收“stream行”消息。 🙁 这是所有这些代码。 SERVER.JS var app = require('express').createServer() , io = require('socket.io').listen(app); app.listen(999); app.get('/webclient', function (req, res) { res.sendfile(__dirname + '/web.html'); }); app.get('/mobile', function (req, res) { res.sendfile(__dirname + '/mobile.html'); }); io.sockets.on('connection', function (socket) { // socket.emit('pop', { hello: 'world' }); socket.on('push', function (data) { console.log('push received, emitting a pop'); socket.emit('pop', { hello: […]

如何通过HTTPS / SSL获得Amazon的ELB与Web套接字配合使用?

这似乎没有正在工作。 我在Amazon ELB后面用了NodeJS的Faye。 当我打开HTTPS时,连接不能再被斡旋。 我在这里find了一个没有答案的问题: https : //forums.aws.amazon.com/message.jspa? messageID =283293 。 任何人都可以得到这个工作? 运行我自己的HAProxy实例之外有什么工作吗?

如何使用AWS IoT向/从Web浏览器发送/接收消息

我们正在尝试使用amazon web services物联网(AWS IoT)将消息发送到Web浏览器(例如:。鉴于AWS IoT支持JavaScript,我们期望这是可能的 。 我们已经在AWS IoT文档中进行了search,但仅查找了服务器端示例 (揭示了AWS秘密/密钥…) 在使用AWS IoT在浏览器中通过WebSockets / MQTT发送/接收消息(例如:使用AWS Cognito进行身份validation)是否有任何良好的工作示例或教程? 谢谢!

使用TCP负载均衡器代理W​​ebSockets而不需要粘性会话

我想使用Amazon Elastic Load Balancer将WebSocket连接代理到多个node.js服务器。 由于Amazon ELB不提供实际的WebSocket支持,我需要使用它的香草TCP消息传递。 不过,我试图了解这将如何工作没有某种粘滞会话function。 据我所知,WebSockets的工作原理是首先从客户端发送HTTP升级请求,由服务器通过发送正确处理密钥authentication的响应来处理。 服务器发送该响应并被客户端批准后,该客户端与服务器之间就存在双向连接。 然而,假设客户端在批准服务器响应之后将数据发送到服务器。 如果将数据发送到负载平衡器,然后负载平衡器将该数据中继到不处理原始WebSocket升级请求的其他服务器,那么这个新的服务器将如何知道WebSocket连接? 或者,客户端是否会自动绕过负载平衡器,并直接将数据发送到处理初始升级的服务器?