tencent cloud

腾讯云超级应用服务

动态与公告
【2025年1月2日】关于腾讯云小程序平台更名为腾讯云超级应用服务的公告
控制台更新动态
Android SDK 更新动态
iOS SDK 更新动态
Flutter 更新动态
IDE 更新动态
基础库更新动态
产品简介
产品概述
产品优势
应用场景
购买指南
计费概述
按量计费(后付费)
续费指引
停服说明
快速入门
套餐管理
概述
控制台账号管理
存储配置
加速配置
品牌化配置
平台功能
控制台登录
用户和权限体系
小程序管理
小游戏管理
应用管理
商业化
平台管理
用户管理
团队管理
运营管理
安全中心
代码接入指引
Demo 及 SDK 获取
Android
iOS
Flutter
App 服务端接入指南
GUID 生成规则
小程序开发指南
小程序介绍与开发环境
小程序代码组成
指南
框架
组件
API
服务端
JS SDK
基础库
IDE 使用指南
小游戏开发指南
指南
API
服务端
实践教程
小程序登录实践教程
小程序订阅消息实践教程
支付相关实践教程
广告接入实践教程
小游戏订阅消息实践教程
相关协议
数据处理和安全协议

UDP 通信

PDF
聚焦模式
字号
最后更新时间: 2024-07-12 19:32:15

createUDPSocket

该 API 使用方法为 UDPSocket wx.createUDPSocket()
功能说明:创建一个 UDP Socket 实例。
返回值:UDPSocket,一个 UDP Socket 实例。

UDPSocket

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

.bind

该 方法 使用方式为 number UDPSocket.bind(number port)
功能说明:绑定一个系统随机分配的可用端口,或绑定一个指定的端口号。
参数及说明:number port,指定要绑定的端口号,不传则返回系统随机分配的可用端口。
返回值:number,绑定成功的端口号。
示例代码
const udp = wx.createUDPSocket()
const port = udp.bind()

.close

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

.connect

该 方法 使用方式为 UDPSocket.connect(Object object)
功能描述:预先连接到指定的 IP 和 port,需要配合 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'
})

.onClose

该 方法 使用方式为 UDPSocket.onClose(function listener)
功能说明:监听关闭事件。
参数及说明:function listener,关闭事件的监听函数。

.offClose

该 方法 使用方式为 UDPSocket.offClose(function listener)
功能说明:移除关闭事件的监听函数。
参数及说明:function listener,onClose 传入的监听函数,不传此参数则移除所有监听函数。
示例代码:
const listener = function (res) { console.log(res) }

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

.onError

该 方法 使用方式为 UDPSocket.onError(function listener)
功能说明:监听错误事件。
参数及说明:function listener,错误事件的监听函数,参数 Object res 如下:
属性
类型
说明
errMsg
string
错误信息

.offError

该 方法 使用方式为 UDPSocket.offError(function listener)
功能说明:移除错误事件的监听函数。
参数及说明:function listener,onError 传入的监听函数,不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }

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

.onListening

该 方法 使用方式为 UDPSocket.onListening(function listener)
功能说明:监听开始监听数据包消息的事件。
参数及说明:function listener,开始监听数据包消息的事件的监听函数。

.offListening

该 方法 使用方式为 UDPSocket.offListening(function listener)
功能说明:移除开始监听数据包消息的事件的监听函数。
参数及说明:function listener,onListening 传入的监听函数,不传此参数则移除所有监听函数。
示例代码:
const listener = function (res) { console.log(res) }

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

.onMessage

该 方法 使用方式为 UDPSocket.onMessage(function listener)
功能说明:监听收到消息的事件。
参数及说明:function listener,收到消息的事件的监听函数,参数 Object res 如下:
属性
类型
说明
message
ArrayBuffer
收到的消息。消息长度需要小于4096
remoteInfo
Object
发送端地址信息
remoteInfo 结构属性
结构属性
类型
说明
address
string
发送消息的 socket 的地址
family
string
使用的协议族,为 IPv4 或者 IPv6
port
number
端口号
size
number
message 的大小,单位:字节

.offMessage

该 方法 使用方式为 UDPSocket.offMessage(function listener)
功能说明:移除收到消息的事件的监听函数。
参数及说明:function listener,onMessage 传入的监听函数,不传此参数则移除所有监听函数。
示例代码
const listener = function (res) { console.log(res) }

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

.send

该 方法 使用方式为 UDPSocket.send(Object object)
功能说明:向指定的 IP 和 port 发送消息。
参数及说明:Object object。
属性
类型
默认值
必填
说明
address
string
-
要发消息的地址。
port
number
-
要发送消息的端口号
message
string/ArrayBuffer
-
要发送的数据
offset
number
0
发送数据的偏移量,仅当 message 为 ArrayBuffer 类型时有效
length
number
message.byteLength
发送数据的长度,仅当 message 为 ArrayBuffer 类型时有效
示例代码:
const udp = wx.createUDPSocket()
udp.bind()
udp.send({
address: '192.168.193.2',
port: 8848,
message: 'hello, how are you'
})

.setTTL

该 方法 使用方式为 UDPSocket.setTTL(number ttl)
功能说明:设置 IP_TTL 套接字选项,用于设置一个 IP 数据包传输时允许的最大跳步数。
参数及说明:number ttl,ttl 参数可以是 0 到 255 之间。
示例代码:
const udp = wx.createUDPSocket()
udp.onListening(function () {
udp.setTTL(64)
})
udp.bind()


.write

该 方法 使用方式为 UDPSocket.write()
功能说明:用法与 send 方法相同,如果没有预先调用 connect 则与 send 无差异。
说明:
即使调用了 connect 也需要在本接口填入地址和端口参数。
示例代码:
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'
})


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈