createTCPSocket
功能说明:创建一个 TCP Socket 实例。
返回值:一个 TCP Socket 实例。
链接限制
允许与局域网内的非本机 IP 通信;
允许与配置过的服务器域名通信;
禁止与以下端口号连接:1024 以下、1099、1433、1521、1719、1720、1723、2049、2375、3128、3306、3389、3659、4045、5060、5061、5432、5984、6379、6000、6566、7001、7002、8000-8100、8443、8888、9200、9300、10051、10080、11211、27017、27018、27019;
每5分钟内最多创建20个 TCPSocket。
TCPSocket
说明:
一个 TCP Socket 实例,默认使用 IPv4 协议。
当 errCode 为 -2 时,errMsg 里应该会有相应的 errno ,开发者可以根据 errno 到 Linux 代码里的 errno-base.h 和 errno.h 中查看具体的报错信息。
.bindWifi
该 方法 使用方式为 TCPSocket.bindWifi(Object options)
功能说明:将 TCP Socket 绑定到当前 Wi-Fi 网络,成功后会触发 onBindWifi 事件(仅 Android 支持)。
参数及说明:Object options。
属性 | 类型 | 默认值 | 必填 | 说明 |
BSSID | string | - | 是 | 当前 Wi-Fi 网络的 BSSID ,可通过 wx.getConnectedWifi 获取 |
示例代码
const tcp = wx.createTCPSocket()tcp.bindWifi({ BSSID: 'xxx' })tcp.onBindWifi(() => {})
.close
该 方法 使用方式为 TCPSocket.close()
功能说明:关闭连接。
示例代码
const tcp = wx.createTCPSocket()tcp.close()
.connect
该 方法 使用方式为 TCPSocket.connect(Object options)
功能说明:在给定的套接字上启动连接。
参数及说明:Object options。
属性 | 类型 | 默认值 | 必填 | 说明 |
address | string | - | 是 | 套接字要连接的地址 |
port | number | - | 是 | 套接字要连接的端口 |
timeout | number | 2 | 否 | 套接字要连接的超时时间,默认为 2s |
示例代码
const tcp = wx.createTCPSocket()tcp.connect({address: '192.168.193.2', port: 8848})
.onClose
该 方法 使用方式为 TCPSocket.onClose(function listener)
功能说明:监听一旦 socket 完全关闭就发出该事件。
参数及说明:function listener,一旦 socket 完全关闭就发出该事件的监听函数。
.offClose
该 方法 使用方式为 TCPSocket.offClose(function listener)
功能说明:移除一旦 socket 完全关闭就发出该事件的监听函数。
参数及说明:function listener,onClose 传入的监听函数。不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }TCPSocket.onConnect(listener)TCPSocket.offConnect(listener) // 需传入与监听时同一个的函数
.onConnect
该 方法 使用方式为 TCPSocket.onConnect(function listener)
功能说明:监听当一个 socket 连接成功建立的时候触发该事件。
参数及说明:function listener,当一个 socket 连接成功建立的时候触发该事件的监听函数。
.offConnect
该 方法 使用方式为 TCPSocket.offConnect(function listener)
功能说明:移除当一个 socket 连接成功建立的时候触发该事件的监听函数。
参数及说明:function listener,onConnect 传入的监听函数。不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }TCPSocket.onConnect(listener)TCPSocket.offConnect(listener) // 需传入与监听时同一个的函数对象
.onError
该 方法 使用方式为 TCPSocket.onError(function listener)
功能说明:监听当错误发生时触发。
参数及说明:function listener 的监听函数。
属性 | 类型 | 说明 |
errMsg | string | 错误信息 |
.offError
该 方法 使用方式为 TCPSocket.offError(function listener)
功能说明:移除当错误发生时触发的监听函数。
参数及说明:function listener,onError 传入的监听函数。不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }TCPSocket.onError(listener)TCPSocket.offError(listener) // 需传入与监听时同一个的函数对象
.onMessage
该 方法 使用方式为 TCPSocket.onMessage(function listener)
功能说明:监听当接收到数据的时触发该事件。
参数及说明:Object res 参数,function listener,当接收到数据的时触发该事件的监听函数。
属性 | 类型 | 说明 |
message | ArrayBufffer | 收到的消息 |
remoteInfo | Object | 发送端地址信息 |
localInfo | Object | 接收端地址信息 |
remoteInfo 结构属性
结构属性 | 类型 | 说明 |
address | string | 发送消息的 socket 的地址 |
family | string | 使用的协议族,为 IPv4 或者 IPv6 |
port | number | 端口号 |
size | number | message 的大小,单位:字节 |
localInfo 结构属性
结构属性 | 类型 | 说明 |
address | string | 发送消息的 socket 的地址 |
family | string | 使用的协议族,为 IPv4 或者 IPv6 |
port | number | 端口号 |
.offMessage
该 方法 使用方式为 TCPSocket.offMessage(function listener)
功能说明:移除当接收到数据的时触发该事件的监听函数。
参数及说明:function listener,onMessage 传入的监听函数。不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }TCPSocket.onMessage(listener)TCPSocket.offMessage(listener) // 需传入与监听时同一个的函数对象
.onBindWifi
该 方法 使用方式为 TCPSocket.onBindWifi(function listener)
功能说明:监听当一个 socket 绑定当前 Wi-Fi 网络成功时触发该事件。
参数及说明:function listener,当一个 socket 绑定当前 Wi-Fi 网络成功时触发该事件的监听函数。
.offBindWifi
该 方法 使用方式为 TCPSocket.offBindWifi(function listener)
功能说明:移除当一个 socket 绑定当前 Wi-Fi 网络成功时触发该事件的监听函数。
参数及说明:function listener,onBindWifi 传入的监听函数。不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }TCPSocket.onBindWifi(listener)TCPSocket.offBindWifi(listener) // 需传入与监听时同一个的函数对象
.write
该 方法 使用方式为 TCPSocket.write(string|ArrayBuffer data)
功能说明:在 socket 上发送数据。
参数及说明:string|ArrayBuffer data,要发送的数据。
示例代码
const tcp = wx.createTCPSocket()tcp.write('hello, how are you')