title: Taro.sendSocketMessage(option)

sidebar_label: sendSocketMessage

通过 WebSocket 连接发送数据。需要先 Taro.connectSocket,并在 Taro.onSocketOpen 回调之后才能发送。

参考文档

类型

  1. (option: Option) => Promise<CallbackResult>

参数

Option

参数 类型 必填 说明
data string | ArrayBuffer 需要发送的内容
complete (res: CallbackResult) => void 接口调用结束的回调函数(调用成功、失败都会执行)
fail (res: CallbackResult) => void 接口调用失败的回调函数
success (res: CallbackResult) => void 接口调用成功的回调函数

示例代码

  1. let socketOpen = false
  2. const socketMsgQueue = []
  3. Taro.connectSocket({
  4. url: 'test.php'
  5. })
  6. Taro.onSocketOpen(function(res) {
  7. socketOpen = true
  8. for (let i = 0; i < socketMsgQueue.length; i++){
  9. sendSocketMessage(socketMsgQueue[i])
  10. }
  11. socketMsgQueue = []
  12. })
  13. function sendSocketMessage(msg) {
  14. if (socketOpen) {
  15. Taro.sendSocketMessage({
  16. data:msg
  17. })
  18. } else {
  19. socketMsgQueue.push(msg)
  20. }
  21. }

API 支持度

API 微信小程序 百度小程序 支付宝小程序 H5 React Native
Taro.sendSocketMessage ✔️ ✔️ ✔️