更新记录
1.0.3(2025-02-13)
- 优化
1.0.2(2025-02-13)
- 受限于新版本基座,header和timeout仅支持iOS
1.0.1(2025-02-12)
- 修复Android携带请求头问题
查看更多
平台兼容性
uni-app
Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
√ |
√ |
- |
- |
- |
- |
4.4 |
12 |
× |
微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
快应用-华为 |
快应用-联盟 |
× |
× |
× |
× |
× |
× |
- |
× |
× |
× |
× |
uni-app x
Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
- |
- |
5.0 |
12 |
× |
× |
websocket,包含客户端和服务端,支持收发字符串和字节码
开发文档
- 集成插件步骤请参考https://www.cnblogs.com/wenrisheng/p/18323027
接口
import {
UTSWebSocket,
UTSWebSocketServer
} from "@/uni_modules/wrs-uts-websocket"
// 客户端
let webSocket = new UTSWebSocket()
// 服务端(服务端目前进支持Android,暂不支持iOS)
let webSocketServer = new UTSWebSocketServer()
WebSocket客户端
// 设置客户端的回调
webSocket.onCallback((resp) => {
this.showMsg(JSON.stringify(resp))
let opt = resp.opt
switch (opt) {
case "onOpen": {
// 连接成功
}
break;
case "onMessage": {
// 收到消息
let type = resp.type
let data = resp.data
switch (type) {
// 收到字符串
case "string": {
}
break;
// 收到字节流
case "byte": {
}
break;
default:
break;
}
}
break;
case "onClose": {
// 断开连接
}
break;
case "onError": {
// 连接出错
}
break;
default:
break;
}
})
let params = {}
params.url = this.url // ws地址,如ws://192.168.0.101:8088
params.headers = { // 自定义请求头,仅支持iOS
token: ""
}
params.timeout = 5 // 连接超时时间,仅支持iOS
webSocket.connect(params)
// 发送字符串
let params = {}
params.type = "string" // 字符串类型
params.data = "xxxx"
webSocket.sendData(params)
// 发送字节码
let params = {}
params.type = "byte" // 字节码类型
params.data = [0x01, 0xFF]
webSocket.sendData(params)
webSocket.disconnect()
WebSocket服务端,仅支持Android
// 设置服务端的回调
webSocketServer.onCallback((resp) => {
this.showMsg(JSON.stringify(resp))
let opt = resp.opt
switch (opt) {
case "onStart": {
// 服务启动成功
}
break;
case "onOpen": {
// 收到新的客户端连接
let client = resp.client
let host = client.host
}
break;
case "onMessage":
{
let data = resp.data
let type = resp.type
let id = resp.client.id
switch (type) {
// 收到字符串
case "string": {
}
break;
// 收到字节流
case "byte": {
}
break;
default:
break;
}
// 发送数据给客户端
let params = {}
params.id = id
params.data = data
params.type = type
webSocketServer.sendData(params)
}
break;
case "onClose": {
// 客户端断开连接
}
break;
case "onError": {
// 客户端出错
}
break;
default:
break;
}
})
let params = {}
// 端口
params.port = 8088
webSocketServer.start(params)
webSocketServer.stop()
// 发送数据给客户端,data和type参考客户端的sendData接口
let params = {}
params.id = id
params.data = data
params.type = type // 支持string、byte
webSocketServer.sendData(params)