Skip to main content
Version: 3.x

SocketTask

WebSocket 任务,可通过 Taro.connectSocket() 接口创建返回。

支持情况:

参考文档

方法

参数类型说明
socketTaskIdnumberwebsocket 当前的连接 ID。
readyStatenumberwebsocket 当前的连接状态。
errMsgstringwebsocket 接口调用结果。
CONNECTINGnumberwebsocket 状态值:连接中。
OPENnumberwebsocket 状态值:已连接。
CLOSINGnumberwebsocket 状态值:关闭中。
CLOSEDnumberwebsocket 状态值:已关闭。
wsWebSocket浏览器 websocket 实例。(h5 端独有)

send

通过 WebSocket 连接发送数据

支持情况:

参考文档

(option: SendOption) => void
参数类型
optionSendOption

close

关闭 WebSocket 连接

支持情况:

参考文档

(option: CloseOption) => void
参数类型
optionCloseOption

onOpen

监听 WebSocket 连接打开事件

支持情况:

参考文档

(callback: OnOpenCallback) => void
参数类型说明
callbackOnOpenCallbackWebSocket 连接打开事件的回调函数

onClose

监听 WebSocket 连接关闭事件

支持情况:

参考文档

(callback: OnCloseCallback) => void
参数类型说明
callbackOnCloseCallbackWebSocket 连接关闭事件的回调函数

onError

监听 WebSocket 错误事件

支持情况:

参考文档

(callback: OnErrorCallback) => void
参数类型说明
callbackOnErrorCallbackWebSocket 错误事件的回调函数

onMessage

监听 WebSocket 接受到服务器的消息事件

支持情况:

参考文档

<T = any>(callback: OnMessageCallback<T>) => void
参数类型说明
callbackTWebSocket 接受到服务器的消息事件的回调函数

参数

CloseOption

参数类型必填说明
codenumber一个数字值表示关闭连接的状态号,表示连接被关闭的原因。
complete(res: TaroGeneral.CallbackResult) => void接口调用结束的回调函数(调用成功、失败都会执行)
fail(res: TaroGeneral.CallbackResult) => void接口调用失败的回调函数
reasonstring一个可读的字符串,表示连接被关闭的原因。这个字符串必须是不长于 123 字节的 UTF-8 文本(不是字符)。
success(res: TaroGeneral.CallbackResult) => void接口调用成功的回调函数

OnCloseCallback

WebSocket 连接关闭事件的回调函数

(result: OnCloseCallbackResult) => void
参数类型
resultOnCloseCallbackResult

OnCloseCallbackResult

参数类型说明
codenumber一个数字值表示关闭连接的状态号,表示连接被关闭的原因。
reasonstring一个可读的字符串,表示连接被关闭的原因。

OnErrorCallback

WebSocket 错误事件的回调函数

(result: OnErrorCallbackResult) => void
参数类型
resultOnErrorCallbackResult

OnErrorCallbackResult

参数类型说明
errMsgstring错误信息

OnMessageCallback

WebSocket 接受到服务器的消息事件的回调函数

(result: OnMessageCallbackResult<T>) => void
参数类型
resultOnMessageCallbackResult<T>

OnMessageCallbackResult

参数类型说明
dataT服务器返回的消息

OnOpenCallback

WebSocket 连接打开事件的回调函数

(result: OnOpenCallbackResult) => void
参数类型
resultOnOpenCallbackResult

OnOpenCallbackResult

参数类型说明
headerTaroGeneral.IAnyObject连接成功的 HTTP 响应 Header

SendOption

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

API 支持度

API微信小程序百度小程序支付宝小程序H5React Native
SocketTask✔️✔️✔️✔️✔️
SocketTask.send✔️✔️✔️✔️✔️
SocketTask.close✔️✔️✔️✔️✔️
SocketTask.onOpen✔️✔️✔️✔️✔️
SocketTask.onClose✔️✔️✔️✔️✔️
SocketTask.onError✔️✔️✔️✔️✔️
SocketTask.onMessage✔️✔️✔️✔️✔️