express使用ws实时通讯
时间: 2023-07-11 12:37:03 浏览: 53
要使用Express和WebSocket进行实时通信,您需要安装WebSocket模块。WebSocket是一个HTML5协议,用于在客户端和服务器之间实现双向通信。在Node.js中,我们可以使用ws模块来实现WebSocket。
下面是一个使用Express和ws模块的示例代码:
```javascript
const express = require('express');
const WebSocket = require('ws');
const app = express();
const server = app.listen(3000, () => {
console.log('Server started on port 3000');
});
const wss = new WebSocket.Server({ server });
wss.on('connection', (ws) => {
console.log('Client connected');
ws.on('message', (message) => {
console.log(`Received message => ${message}`);
});
ws.send('Hello! Message received!');
});
```
首先,我们创建一个Express应用程序,并在端口3000上启动它。然后,我们创建一个WebSocket服务器实例,并将其附加到Express服务器上。每当有新客户端连接到服务器时,WebSocket会发出一个'connection'事件。在此事件处理程序中,我们可以接收来自客户端的消息,并向客户端发送消息。
在上面的示例中,我们为每个新连接的客户端打印一条消息,并在收到消息时打印该消息。我们还使用ws.send()方法向客户端发送消息。
您可以使用WebSocket API将代码添加到前端,以便从浏览器向服务器发送消息并接收来自服务器的消息。