小程序开放平台

文档中心
基础
路由
跳转
转发
界面
网络
发起请求
上传
下载
WebSocket
sendSocketMessage
onSocketOpen
onSocketMessage
onSocketError
onSocketClose
connectSocket
closeSocket
SocketTask
SocketTask事件
支付
数据缓存
媒体
位置
开放接口
设备
XHSML
性能
第三方平台
文件
数据分析
画布

xhs.closeSocket

开发
>
JS API
>
网络
>
WebSocket
>
closeSocket
>
更新时间:2024-11-13 19:05:29

以Promise风格调用: 支持

关闭 WebSocket 连接

参数

Object object

属性
类型
默认值
必填
说明
codenumber1000一个数字值表示关闭连接的状态号,表示连接被关闭的原因。
reasonstring一个可读的字符串,表示连接被关闭的原因
protocolsarray子协议数组
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

属性
类型
说明
errMsgstring

xhs.closeSocket(Object object)

推荐使用 SocketTask 的方式去管理 webSocket 链接,每一条链路的生命周期都更加可控,同时存在多个 webSocket 的链接的情况下使用 xhs 前缀的方法可能会带来一些和预期不一致的情况。

以 Promise 风格 调用:支持

关闭 WebSocket 连接。

参数

Object object

属性
类型
默认值
必填
说明
codenumber1000(表示正常关闭连接)一个数字值表示关闭连接的状态号,表示连接被关闭的原因。
reasonstring一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于 123 字节的 UTF-8 文本(不是字符)。
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

xhs.connectSocket({
  url: 'test.php'
})

//注意这里有时序问题,
//如果 xhs.connectSocket 还没回调 xhs.onSocketOpen,而先调用 xhs.closeSocket,那么就做不到关闭 WebSocket 的目的。
//必须在 WebSocket 打开期间调用 xhs.closeSocket 才能关闭。
xhs.onSocketOpen(function() {
  xhs.closeSocket()
})

xhs.onSocketClose(function(res) {
  console.log('WebSocket 已关闭!')
})