UDPSocket.offClose(function listener)

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.11.1

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 网络使用说明、局域网通信

功能描述

移除关闭事件的监听函数

参数

function listener

onClose 传入的监听函数。不传此参数则移除所有监听函数。

示例代码

const listener = function (res) { console.log(res) }

UDPSocket.onClose(listener)
UDPSocket.offClose(listener) // 需传入与监听时同一个的函数对象

UDPSocket.connect(Object object)

基础库 2.15.0 开始支持,低版本需做兼容处理。

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.11.1

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 网络使用说明、局域网通信

功能描述

预先连接到指定的 IP 和端口号,需要配合 write 方法一起使用

参数

Object object

属性 类型 默认值 必填 说明
address string 是 要发消息的地址
port number 是 要发送消息的端口号

示例代码


  const udp = wx.createUDPSocket()
  udp.bind()
  udp.connect({
    address: '192.168.193.2',
    port: 8848,
  })
  udp.write({
    address: '192.168.193.2',
    port: 8848,
    message: 'hello, how are you'
  })

UDPSocket.close()

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.11.1

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 网络使用说明、局域网通信

功能描述

关闭 UDP Socket 实例,相当于销毁这个实例。关闭之后,这个 UDP Socket 实例就不能再发送消息了,每次调用 UDPSocket.send 都会触发错误事件,并且 message 事件回调函数也不会再执行。在 UDPSocket 实例被创建后,会被 Native 强引用,确保它不会被垃圾回收(GC)。在调用 UDPSocket.close 后,会解除这个强引用,让 UDPSocket 实例遵循垃圾回收机制。

UDPSocket.bind(number port)

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.11.1

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 网络使用说明、局域网通信

功能描述

绑定一个系统随机分配的可用端口,或绑定一个指定的端口号

参数

number port

基础库 2.9.0 开始支持,低版本需做兼容处理。

指定要绑定的端口号,不传则返回系统随机分配的可用端口

返回值

number

绑定成功的端口号

示例代码


  const udp = wx.createUDPSocket()
  const port = udp.bind()

UDPSocket

基础库 2.7.0 开始支持,低版本需做兼容处理。

相关文档: 网络使用说明、局域网通信

一个 UDP Socket 实例,默认使用 IPv4 协议。

方法

number UDPSocket.bind(number port)

绑定一个系统随机分配的可用端口,或绑定一个指定的端口号

UDPSocket.setTTL(number ttl)

设置 IP_TTL 套接字选项,用于设置一个 IP 数据包传输时允许的最大跳步数

UDPSocket.send(Object object)

向指定的 IP 和 port 发送消息。基础库 2.9.0 起支持广播 (指定地址为 255.255.255.255)。

UDPSocket.connect(Object object)

预先连接到指定的 IP 和 port,需要配合 write 方法一起使用

UDPSocket.write(Object object)

用法与 send 方法相同,如果没有预先调用 connect 则与 send 无差异(注意即使调用了 connect 也需要在本接口填入地址和端口参数)

UDPSocket.close()

关闭 UDP Socket 实例,相当于销毁。 在关闭之后,UDP Socket 实例不能再发送消息,每次调用 UDPSocket.send 将会触发错误事件,并且 message 事件回调函数也不会再也执行。在 UDPSocket 实例被创建后将被 Native 强引用,保证其不被 GC。在 UDPSocket.close 后将解除对其的强引用,让 UDPSocket 实例遵从 GC。

UDPSocket.onClose(function listener)

监听关闭事件

UDPSocket.offClose(function listener)

移除关闭事件的监听函数

UDPSocket.onError(function listener)

监听错误事件

UDPSocket.offError(function listener)

移除错误事件的监听函数

UDPSocket.onListening(function listener)

监听开始监听数据包消息的事件

UDPSocket.offListening(function listener)

移除开始监听数据包消息的事件的监听函数

UDPSocket.onMessage(function listener)

监听收到消息的事件

UDPSocket.offMessage(function listener)

移除收到消息的事件的监听函数

错误

错误码 错误信息 说明
-1 系统错误
-2 socket接口错误,可参考系统的socket错误码
-3 发送失败,无接口权限
1 发送失败,参数错误,address不合法
2 发送失败,参数错误,port不合法

UDPSocketwx.createUDPSocket(string type, Object options)

基础库 2.7.0 开始支持,低版本需做兼容处理。

微信小程序插件:支持,需要微信小程序基础库版本不低于 2.11.1

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 网络使用说明、局域网通信

功能描述

创建一个 UDP Socket 实例。使用前请注意阅读相关说明。

参数

string type

基础库 2.18.0 开始支持,低版本需做兼容处理。

套接字族,必须是 udp4 或 udp6,默认是 udp4

Object options

配置参数,例如contextId: magicBrush环境下的contextId

返回值

UDPSocket

一个 UDP Socket 实例