更新记录
1.0.4(2025-06-25) 下载此版本
修改说明
1.0.3(2025-05-30) 下载此版本
修改说明
1.0.2(2025-05-13) 下载此版本
更新说明文件
查看更多平台兼容性
uni-app
Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
---|---|---|---|---|---|---|---|---|
√ | √ | √ | √ | √ | √ | - | - | - |
微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
---|---|---|---|---|---|---|---|---|---|---|
√ | - | - | - | - | - | - | - | - | - | - |
其他
多语言 | 暗黑模式 | 宽屏模式 |
---|---|---|
× | × | √ |
lu-socket
uniapp WebSocket 二次封装,支持自动重连、事件监听等功能。
特性
- 自动重连机制
- 完整的事件监听系统
- 简单易用的 API
安装
导入到你的项目中即可。
基础用法
import WebSocketClient from "@/uni_modules/lu-socket/js_sdk/socket.js";
// 创建实例
const ws = new WebSocketClient("wss://your-websocket-server", {
reconnectInterval: 3000, // 重连间隔(ms)
maxReconnectAttempts: 5, // 最大重连次数
autoReconnect: true, // 是否自动重连
});
// 监听连接打开
ws.onOpen(() => {
console.log("连接已打开");
});
// 监听消息
ws.onMessage((data) => {
console.log("收到消息:", data);
});
// 连接
ws.connect(
() => console.log("连接成功"),
(error) => console.error("连接失败:", error)
);
// 发送消息
ws.send(
"hello",
() => console.log("发送成功"),
(error) => console.log("发送失败:", error)
);
// 关闭连接
ws.close();
API 文档
构造函数选项
{
reconnectInterval: number, // 重连间隔时间(ms),默认3000
maxReconnectAttempts: number, // 最大重连次数,默认-1(无限重连)
autoReconnect: boolean, // 是否自动重连,默认true
timeout: number, // 连接超时时间(ms),默认10000
header: object, // 请求头
protocols: string[] // 子协议数组
}
事件监听
onOpen(callback)
: 监听连接打开onClose(callback)
: 监听连接关闭onError(callback)
: 监听连接错误onMessage(callback)
: 监听收到消息onReconnect(callback)
: 监听重连尝试onMaxReconnectAttemptsReached(callback)
: 监听达到最大重连次数
方法
connect(onSuccess, onError)
: 建立连接close(skipReconnect = true)
: 关闭连接send(message, onSuccess, onError)
: 发送消息reconnect(onSuccess, onError)
: 手动触发重连
属性
isConnected
: 当前连接状态reconnecting
: 是否正在重连reconnectAttempts
: 当前重连次数
注意事项
- 建议在组件销毁时调用 close() 方法清理连接
- 自动重连功能可以通过 autoReconnect 选项关闭