标签: socket.io

哪个websocket库与Node.js一起使用?

目前node.js 有大量的websocket库,最流行的似乎是:

然而,我找不到任何一个之间的任何具体的具体比较...显然Socket.io很棒,但已经过时了,并且已经失败了.ws和websocket-node都声称它们是最快的.而engine.io似乎是新的,但比较轻的aletarntives重得多.

如果我们或某人能够将一个答案作为指导,使用哪个套接字库以及何时使用它们,以及它们之间的比较,那将是惊人的.

websocket node.js socket.io sockjs engine.io

419
推荐指数
3
解决办法
22万
查看次数

socket.io和websockets之间的差异

node.js中socket.io和websockets之间有什么区别?
它们都是服务器推送技术吗?我觉得唯一的区别是,

  1. socket.io允许我通过指定事件名称来发送/发送消息.

  2. 在socket.io的情况下,来自服务器的消息将到达所有客户端,但对于websockets中的相同内容,我被迫保留所有连接的数组并循环通过它以向所有客户端发送消息.

另外,我想知道为什么网络检查员(如Chrome/firebug/fiddler)无法从服务器捕获这些消息(来自socket.io/websocket)?

请澄清一下.

firebug google-chrome websocket node.js socket.io

403
推荐指数
8
解决办法
17万
查看次数

向发件人以外的所有客户发送回复

要向所有客户发送内容,请使用:

io.sockets.emit('response', data);
Run Code Online (Sandbox Code Playgroud)

要从客户处接收,您使用:

socket.on('cursor', function(data) {
  ...
});
Run Code Online (Sandbox Code Playgroud)

如何将两者结合起来,以便在从客户端收到服务器上的消息时,我将该消息发送给除发送消息的用户以外的所有用户?

socket.on('cursor', function(data) {
  io.sockets.emit('response', data);
});
Run Code Online (Sandbox Code Playgroud)

我是否必须通过发送带有消息的client-id然后在客户端检查或者是否有更简单的方法来破解它?

javascript node.js socket.io

213
推荐指数
5
解决办法
10万
查看次数

socket.io的初学者教程很好?

我对网络开发的世界很陌生并且加入了这个潮流,因为我发现HTML5的概念非常有趣.我对使用canvas非常有信心,现在想转移到websockets部分.我已经开始了解socket.io是迄今为止使用的框架,当我们想要使用Web套接字时.

关于什么教程和示例参考总虚拟的任何指针将非常感谢!

javascript html5 websocket node.js socket.io

204
推荐指数
3
解决办法
13万
查看次数

使用socket.io和node.js将消息发送到特定客户端

我正在使用socket.io和node.js,直到现在看起来还不错,但我不知道如何从服务器向特定客户端发送消息,如下所示:

client.send(message, receiverSessionId)
Run Code Online (Sandbox Code Playgroud)

但是这些.send().broadcast()方法似乎都不能满足我的需要.

我发现作为一种可能的解决方案是,该.broadcast()方法接受一个不发送消息的SessionIds数组作为第二个参数,因此我可以将当​​前连接的所有SessionId的数组传递给服务器,除了一个我希望发送消息,但我觉得必须有更好的解决方案.

有任何想法吗?

javascript server-side websocket node.js socket.io

179
推荐指数
10
解决办法
21万
查看次数

socket.io房间或命名空间?

我正在调查nodejs/socket.io进行实时聊天,我需要一些建议来实现房间.

哪个更好,使用命名空间或使用房间功能完全隔离聊天的grops?

房间和命名空间之间真正的技术差异是什么?

有资源使用差异吗?

node.js socket.io

154
推荐指数
5
解决办法
5万
查看次数

node.js,带SSL的socket.io

我正在尝试使用我的SSL证书运行socket.io但是,它将无法连接.

我将我的代码基于聊天示例:

var https = require('https');
var fs = require('fs');
/**
 * Bootstrap app.
 */
var sys = require('sys')
require.paths.unshift(__dirname + '/../../lib/');

/**
* Module dependencies.
*/

var express = require('express')
  , stylus = require('stylus')
  , nib = require('nib')
  , sio = require('socket.io');

/**
 * App.
 */
var privateKey = fs.readFileSync('../key').toString();
var certificate = fs.readFileSync('../crt').toString();
var ca = fs.readFileSync('../intermediate.crt').toString();

var app = express.createServer({key:privateKey,cert:certificate,ca:ca });


/**
 * App configuration.
 */

...

/**
 * App routes.
 */

app.get('/', function (req, res) { …
Run Code Online (Sandbox Code Playgroud)

ssl https websocket node.js socket.io

152
推荐指数
5
解决办法
16万
查看次数

Socket.IO - 如何获取连接的套接字/客户端列表?

我正在尝试获取当前连接的所有套接字/客户端的列表.

io.sockets 遗憾的是,它没有返回数组.

我知道我可以使用数组保留自己的列表,但不要认为这是一个最佳解决方案有两个原因:

  1. 冗余.Socket.IO已经保留了此列表的副本.

  2. Socket.IO提供了为客户端设置任意字段值的方法(即:),socket.set('nickname', 'superman')所以如果我要维护自己的列表,我需要跟上这些变化.

救命?

node.js socket.io

144
推荐指数
14
解决办法
21万
查看次数

node.js TypeError:path必须是绝对的或指定root到res.sendFile [无法解析JSON]

[add]所以我的下一个问题是,当我尝试添加一个新的依赖(npm install --save socket.io).JSON文件也有效.我收到此错误:无法解析json

npm ERR! Unexpected string
npm ERR! File: /Users/John/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.
npm ERR! 
npm ERR! This is not a bug in npm.
npm ERR! Tell the package author to fix their package.json file. JSON.parse 
Run Code Online (Sandbox Code Playgroud)

所以我一直试图弄清楚为什么这个错误已经回归.所有文件(HTML,JSON,JS)都在我桌面上的同一文件夹中.我正在使用node.js和socket.io

这是我的JS文件:

var app = require('express')();
var http = require('http').Server(app);

app.get('/', function(req, res){
  res.sendFile('index.html');
});

http.listen(3000,function(){
    console.log('listening on : 3000');
});
Run Code Online (Sandbox Code Playgroud)

这是返回的内容:

MacBook-Pro:~ John$ node /Users/John/Desktop/Chatapp/index.js 
listening on …
Run Code Online (Sandbox Code Playgroud)

javascript dependencies json node.js socket.io

134
推荐指数
4
解决办法
13万
查看次数

在socket.io中获取客户端的IP地址

在Node.js服务器中使用socket.IO时,是否有一种简单的方法来获取传入连接的IP地址?我知道你可以从标准的HTTP连接中获取它,但socket.io是一个不同的野兽.

ip-address node.js socket.io

127
推荐指数
9
解决办法
12万
查看次数