WebSockets
WebSockets 是一种先进的技术。它可以在用户的浏览器和服务器之间打开交互式通信会话。使用此 API,您可以向服务器发送消息并接收事件驱动的响应,而无需通过轮询服务器的方式以获得响应。
接口
WebSocket
-
用于连接 WebSocket 服务器的主要接口,之后可以在这个连接上发送 和接受数据。
CloseEvent
-
连接关闭时 WebSocket 对象发送的事件。
MessageEvent
-
当从服务器获取到消息的时候 WebSocket 对象触发的事件。
工具
- HumbleNet: 一个在浏览器中工作的跨平台网络库。它由一个围绕 websocket 和 WebRTC 的 C 包装器组成,抽象了跨浏览器的差异,方便了为游戏和其他应用程序创建多用户网络功能。
- µWebSockets:由 C++11 和 Node.js 实现的高度可扩展的 WebSocket 服务器和客户端.。
- ClusterWS: 轻量级、快速和强大的框架,用于在 Node.js 中构建可伸缩的 WebSocket 应用程序。
- Socket.IO: 一个基于长轮询/WebSocket 的 Node.js 第三方传输协议。
- SocketCluster: 一个用于Node.js的 pub/sub 专注于可伸缩 WebSocket 框架。
- WebSocket-Node: 一个用 Node.js实现 WebSocket 服务器 API。
- Total.js:一个用Node.js 实现的的 Web 应用程序框架(例如:WebSocket 聊天)。
- Faye: 一个 Node.js 的 WebSocket(双向连接)和 EventSource(单向连接)的服务器和客户端。
- SignalR: SignalR 在可用时将隐藏使用 WebSockets,在不可用时将优雅地使用其他技术和技术,而应用程序代码保持不变。
- Caddy: 能够将任意命令(stdin/stdout)代理为 websocket 的 web 服务器。
- ws: 一个流行的 WebSocket 客户端和服务器 Node.js库。
- jsonrpc-bidirectional: 易于使用异步 RPC 库,通过单个 WebSocket 或 RTCDataChannel (WebRTC) 连接支持双向调用。TCP / SCTP /等。客户端和服务器可以各自承载自己的 JSONRPC 和服务器端点。
- rpc-websockets: JSON-RPC 2.0 在 websocket 上实现 Node.js 和 JavaScript。
相关话题
规范
Specification |
---|
WebSockets Standard # the-websocket-interface |
浏览器兼容性
BCD tables only load in the browser