WebSocket 是一种网络通信协议,它允许服务器和客户端之间建立一个持久的连接,通过这个连接,双方可以随时发送数据。
基本概念
- WebSocket 连接:WebSocket 连接是一个全双工通信通道,允许服务器和客户端之间实时双向通信。
- 握手:WebSocket 连接的建立过程称为握手,客户端通过发送特定的 HTTP 请求来建立连接。
- 数据传输:一旦连接建立,客户端和服务器就可以通过这个连接发送数据。
创建 WebSocket 连接
创建 WebSocket 连接通常需要以下步骤:
- 握手请求:客户端发送一个特殊的 HTTP 请求来建立 WebSocket 连接。
- 握手响应:服务器响应客户端的请求,如果同意建立连接,则会返回一个特定的响应。
- 连接建立:一旦服务器返回响应,客户端和服务器之间的 WebSocket 连接就建立了。
示例代码
以下是一个简单的 WebSocket 客户端和服务器示例:
// 服务器端代码 (Node.js)
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
console.log('received: %s', message);
});
ws.send('something');
});
// 客户端代码 (JavaScript)
const ws = new WebSocket('ws://localhost:8080');
ws.on('open', function open() {
ws.send('hello');
});
ws.on('message', function incoming(data) {
console.log('received: %s', data);
});
扩展阅读
更多关于 WebSocket 的信息,您可以访问我们的WebSocket 指南。
WebSocket 图解