nodejs 用socket.io实现websocket
时间: 2023-06-16 16:03:27 浏览: 94
要使用socket.io实现websocket,需要先安装socket.io模块。可以使用npm来进行安装:
```
npm install socket.io
```
安装完成后,可以在nodejs中引入socket.io模块,并创建一个websocket服务,如下所示:
```
const io = require('socket.io')(server);
io.on('connection', (socket) => {
console.log('a user connected');
socket.on('disconnect', () => {
console.log('user disconnected');
});
socket.on('message', (msg) => {
console.log('message: ' + msg);
});
});
```
上面的代码创建了一个websocket服务,并监听了connection事件。当有客户端连接时,会打印出'a user connected'。当客户端断开连接时,会打印出'user disconnected'。当客户端发送消息时,会打印出'message: '和消息内容。
在客户端可以使用socket.io-client模块来连接websocket服务,如下所示:
```
const socket = io('http://localhost:3000');
socket.on('connect', () => {
console.log('connected to server');
});
socket.on('disconnect', () => {
console.log('disconnected from server');
});
socket.emit('message', 'hello world');
```
上面的代码连接了一个websocket服务,并监听了connect和disconnect事件。当连接成功时,会打印出'connected to server'。当连接断开时,会打印出'disconnected from server'。然后向服务器发送了一个消息'hello world'。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)