UNI-APP websocket 心跳
时间: 2024-10-09 17:12:51 浏览: 53
uni-app中H5、PC端websocket使用
5星 · 资源好评率100%
UNI-APP 的 WebSocket 实现中,心跳机制是一种保持客户端与服务器长连接活跃状态的技术。通常通过定期发送一定频率的“心跳包”来检测双方是否还在线。当服务器接收到心跳请求,它会确认收到并继续维持连接;如果一段时间内未收到回应,则可能会认为客户端断开,并尝试关闭连接或主动重连。
UNI-APP 提供了对WebSocket的内置支持,开发者可以在应用中设置心跳间隔时间、心跳超时时间和心跳包的内容等配置。比如,你可以设置每5分钟发送一次心跳,如果超过60秒未收到服务端响应,则视为断线。
以下是简单的示例代码片段:
```javascript
// 初始化WebSocket连接
const socket = uniWebSocket.create({
url: 'your-websocket-url',
// 其他配置如心跳配置
heartbeatInterval: 30 * 1000, // 每30秒发送一次心跳
heartbeatTimeout: 60 * 1000, // 超时时间为60秒
});
// 发送心跳
socket.send('ping');
// 接收心跳响应
socket.onmessage = (event) => {
if (event.data === 'pong') { // 如果收到pong响应,表示连接正常
console.log('Heartbeat received');
} else {
console.error('Lost connection');
}
};
// 关闭连接处理
socket.close();
```
阅读全文