tt.connectSocket
收藏我的收藏
基础库 1.0.0 开始支持本方法,这是一个异步方法。
创建一个 WebSocket 连接实例,并通过返回的SocketTask操作该连接。
前提条件 | 网络相关的 API 在使用前需要配置域名白名单,请前往开发者平台「开发 - 开发设置」,添加 socket 合法域名 |
业务背景 | 无 |
使用限制 | 无 |
注意事项 |
|
相关教程 |
语法
tt.connectSocket(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
url | string | 否 | Socket 连接地址 | 1.0.0 | |
header | object | 否 | HTTP Header | 1.0.0 | |
protocols | Array<string> | 否 | 子协议数组 | 1.0.0 | |
success | function | 否 | 接口调用成功的回调函数 | 1.0.0 | |
fail | function | 否 | 接口调用失败的回调函数 | 1.0.0 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | 1.0.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | 回调信息 | 1.0.0 |
socketTaskId | number | 当前创建的 socketTask 序号 | 1.0.0 |
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | 错误信息 | 1.0.0 |
返回值
类型 | 说明 | 最低支持版本 |
---|---|---|
string | SocketTask(Socket 任务对象) | 1.0.0 |
扫码体验
请使用字节宿主APP扫码
代码示例
let socketTask = tt.connectSocket({ url: "wss://somepath", protocols: ["p1"], }); socketTask.onOpen(() => { console.log("WebSocket 已连接"); }); socketTask.onClose(() => { console.log("WebSocket 已断开"); }); socketTask.onError((error) => { console.error("WebSocket 发生错误:", error); }); socketTask.onMessage((message) => { console.log("socket message:", message); let data = message.data; if (Object.prototype.toString.call(data) === "[object ArrayBuffer]") { data = Codec.read(data); } });