小程序通过 WebSocket 连接发送数据wx.sendSocketMessage

wx.sendSocketMessage(Object object)

通过 WebSocket 连接发送数据。需要先 wx.connectSocket,并在 wx.onSocketOpen 回调之后才能发送。推荐使用 SocketTask 的方式去管理 webSocket 链接,每一条链路的生命周期都更加可控。同时存在多个 webSocket 的链接的情况下使用 wx 前缀的方法可能会带来一些和预期不一致的情况。

参数

Object object

属性 类型 默认值 必填 说明
data string/ArrayBuffer 需要发送的内容
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

let socketOpen = false
let socketMsgQueue = []
wx.connectSocket({
  url: 'test.php'
})
wx.onSocketOpen(function(res) {
  socketOpen = true
  for (let i = 0; i < socketMsgQueue.length; i++){
    sendSocketMessage(socketMsgQueue[i])
  }
  socketMsgQueue = []
})
function sendSocketMessage(msg) {
  if (socketOpen) {
    wx.sendSocketMessage({
      data:msg
    })
  } else {
    socketMsgQueue.push(msg)
  }
}

分类 小程序WebSocket相关推荐:

小程序创建一个 WebSocket 连接wx.connectSocket 小程序监听 WebSocket 连接打开事件wx.onSocketOpen 小程序监听 WebSocket 接受到服务器的消息事件wx.onSocketMessage 小程序监听 WebSocket 错误事件wx.onSocketError 小程序监听 WebSocket 连接关闭事件wx.onSocketClose 小程序监听 WebSocket 连接关闭事件wx.onSocketClose 小程序通过 WebSocket 连接发送数据wx.sendSocketMessage 小程序WebSocket 任务SocketTask 小程序通过 WebSocket 连接发送数据SocketTask.send 小程序关闭 WebSocket 连接SocketTask.close 小程序监听 WebSocket 连接打开事件SocketTask.onOpen 小程序监听 WebSocket 连接关闭事件SocketTask.onClose 小程序监听 WebSocket 错误事件SocketTask.onError 小程序监听 WebSocket 接受到服务器的消息事件SocketTask.onMessage