Tag: websocket

在断开事件中重新连接套接字

我试图重新连接套接字之后断开连接事件被触发相同的socket.id这里是我的套接字configuration var http = require('http').Server(app); var io = require('socket.io')(http); var connect_clients = [] //here would be the list of socket.id of connected users http.listen(3000, function () { console.log('listening on *:3000'); }); 所以在断开连接事件,我想重新连接断开连接的用户与相同的socket.id,如果可能的话 socket.on('disconnect',function(){ var disconnect_id = socket.id; //i want reconnect the users here });

Socket.io不设置CORS头(s)

我知道这个问题已经被问了几次了。 但是,我无法得到任何这些解决scheme的工作。 我正在运行node.js和socket.io的标准安装。 (来自Amazon EC2上的yum) 问题在于Chrome正在回退到xhr轮询,并且这些请求需要一个可用的CORSconfiguration。 但是,我似乎无法得到它的工作。 我的Web服务器运行在端口80上,而node.js(socket.io)在端口81上运行。我试图让socket.io使用源策略,如你所见。 我也尝试使用“*:*”作为起源,没有运气。 这是我的代码: var http = require('http'); var io = require('socket.io').listen(81, {origins: '*'}); io.configure( function(){ io.set('origin', '*'); }); io.set("origins","*"); var server = http.createServer(function(req, res) { io.sockets.emit("message", "test"); res.writeHead(200); res.end('Hello Http'); console.log("Message recieved!"); }); server.listen(82); io.sockets.on('connection', function(client) { console.log("New Connection"); }); 非常感谢你!

用lighttpdredirect端口80上的websocketstream量

我有一个托pipe在lighttpd上的网站,可以在“www”子域访问。 我也有一个聊天服务器监听端口8124使用node.js和socket.io。 我希望所有的客户端stream量发生在端口80,通过redirect到“聊天”子域的所有请求到端口8124.所以我启用了mod_proxy和lighttpd.conf我补充说: $HTTP["host"] == "chat.myserver.com" { proxy.server = ( "" => (( "host" => "78.128.79.192", "port" => "8124" )) ) } 在客户端,当我连接到websocket时, var socket = io.connect('http://chat.myserver.com'); 我从node.js得到正确的消息: debug – client authorized info – handshake authorized 6067470561567883577 debug – setting request GET /socket.io/1/websocket/6067470561567883577 debug – set heartbeat interval for client 6067470561567883577 debug – client authorized […]

内部的socket.io客户端列表位置

我想知道,如果Socket.io会内部做簿记,并允许用户检索客户列表,或者如果我们将手动需要跟踪连接的客户端列表如下所示: var Server = require('socket.io'); var io = new Server(3980, {}); const clients = []; io.on('connection', function (socket) { clients.push(socket); socket.on('disconnect', function () { clients.splice(clients.indexOf(socket),1); }); }); socket.io是否存储连接列表,如下所示: io.connections 要么 io.sockets 比我期望find这个信息更麻烦,对于更新版本的socket.io。 我正在使用version => "socket.io": "^1.7.2"

通过浏览器的HTTPS通过networking套接字连接mqtt客户端

我想使用带HTTPS的Web套接字在Web浏览器上运行mqtt客户端。 用HTTP,我没有问题。 这是使用HTTP时Web浏览器上的代码。 <script> var client = mqtt.connect( 'wss://127.0.0.1:3000', {username:'test_user', password:'test_password'} ); client.subscribe("mqtt/test"); client.on("message", function(topic, payload) { alert([topic, payload].join(": ")); client.end(); }); client.publish("mqtt/test", "testing hello world!"); </script> 这就是我如何启动独立的mosca broker在websockets上使用HTTPS。 mosca –very-verbose –key ./tls-key.pem –cert ./tls-cert.pem –credentials ./credentials.json –https-port 3000 –https-bundle –https-static ./ | pino 我应该如何更改浏览器上的mqtt客户端代码以通过HTTPS连接到websockets上的Mosca代理?

使用sockjs设置SSL

如何在sockjs(在nodejs上运行)中安装https / ssl证书(和密钥)? 我目前正在运行最基本的设置,这就是“回声”示例设置。 这是一个如下: var http = require('http'); var sockjs = require('sockjs'); var node_static = require('node-static'); // 1. Echo sockjs server var sockjs_opts = {sockjs_url: "http://cdn.sockjs.org/sockjs-0.3.min.js"}; var sockjs_echo = sockjs.createServer(sockjs_opts); sockjs_echo.on('connection', function(conn) { conn.on('data', function(message) { conn.write(message); }); }); // 2. Static files server var static_directory = new node_static.Server(__dirname); // 3. Usual http stuff […]

在node.js中的TCP服务器和HTTP服务器之间创buildWebSockets

我已经创build了一个使用Node.js侦听客户端连接的TCP服务器 。 我需要通过Websocket ( socket.io )在Node.js中再次将数据从TCP服务器传输到HTTP服务器 。 但是,我不知道如何创build这样的连接,使得TCP服务器能够通过Websocket将数据推送到HTTP服务器。 非常感谢。

NodeJS如何处理没有WebSocket的持久连接?

我对NodeJS真的很陌生(如果我对某些东西听起来很天真,我很抱歉),而且我一直在挖掘示例聊天应用程序的源代码。 但是,我无法理解一件事情。 我知道WebSockets有助于处理持续的全双工双向连接。 但是,NodeJS如何在不使用WebSocket的情况下pipe理上述聊天应用程序中的持久连接呢? 如果NodeJS 可以处理一个持久的双向连接,那么在Node中整合Socket.IO的function到底是什么呢?

WebSocket错误:在WebSocket握手期间出错:没有在状态行中find响应代码

我想做一个tcp连接到我的服务器。 但是我每次都遇到错误… 到'ws://my.ip:1337 /'的WebSocket连接失败:WebSocket握手期间出错:在状态行中没有find响应代码:Echo服务器 客户: var connection = new WebSocket('ws://my.ip:1337'); connection.onopen = function () { connection.send('Ping'); // Send the message 'Ping' to the server }; 服务器: var net = require('net'); var server = net.createServer(function (socket) { socket.write('Echo server\r\n'); socket.pipe(socket); console.log('request'); }); server.listen(1337, 'my.ip'); 怎么了 ?

使用Socket.IO进行Android Java套接字通信

我正在编写一个消息应用程序。 我的服务器是build立在node.JS和socket.io上的。 我的客户应该是一个Android应用程序。 然而,我似乎无法find一个体面的库,给我一个Java接口到Socket.IO(通过websockets?)。 有一些图书馆存在吗? 或者我必须回到另一个解决scheme(哪一个?)? 我find了这个cocoa的库: https : //github.com/fpotter/socketio-cocoa 。 Android的任何替代品? 谢谢!