相关疑难解决方法(0)

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万
查看次数

Socket.io 1.x:仅使用WebSockets?

我们正在开发一个仅在现代浏览器(IE10 +)上运行的Web应用程序,原因各不相同.

我们实现的功能之一是Socket.io 1.x. 但是,默认情况下,Socket.io客户端会尝试支持较旧的浏览器,因此它会启动与长轮询的连接,然后将其更新到WebSockets.这是浪费时间和资源,因为我们知道浏览器支持WS.

我一直在搜索,我只能找到这个wiki页面,但是,它是关于Socket.io 0.9的.

最后,我找到了engine.io-client的文档(Socket.io-client基于1.x分支).这是我编写的代码,似乎正在运行.但是,我想知道它是否正确或者我做错了什么:

io.connect('https://...', {
    upgrade: false,
    transports: ['websocket']
})
Run Code Online (Sandbox Code Playgroud)

奇怪的是,仅仅将transports属性设置为数组websockets是不够的; 我也不得不禁用upgrade.它是否正确?

更新

我做了一些新的发现.

随着transports设置为['websocket']只,它没有任何区别阉羊upgrade被启用.这是正常的吗?

javascript websocket socket.io

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