BT编程语言文档

net UDP 通信

功能

UDP 用于无连接报文通信,适合局域网发现、设备广播、轻量状态上报等场景。当前版本支持 UDP 监听和 UDP 客户端发送。

监听语法

客户端语法

参数

net.listen({type:'udp'})

参数类型必填默认值说明
typestring固定为 udp
bindstring本地绑定地址,格式为 host:port
on_messagefn收到报文后调用,参数为 data, addr
on_errorfn后台任务出错时调用,参数为 err

net.connect({type:'udp'})

参数类型必填默认值说明
typestring固定为 udp
hoststring默认远端主机名或 IP
portint默认远端端口,范围 0..65535

返回值

返回 UdpSocket 对象。

字段/方法类型说明
addrstring本地 socket 地址
typestring固定为 udp
send(data)fn向默认远端发送字符串,返回写入字节数
send(data, addr)fn向指定 host:port 发送字符串,返回写入字节数
close()fn关闭 socket,返回 true

注意事项

  • UDP 没有连接确认、顺序保证和重传保证,发送成功只表示数据交给本机 socket。
  • net.listen({type:'udp'}) 通过 on_message(data, addr) 接收报文,没有同步 read() 方法。
  • addr 是对象,包含 ipportaddr 字段;回发时可使用 addr.addr
  • 监听模式调用 send(data) 时必须传第二个目标地址;客户端模式可以省略目标地址。
  • 收到的报文当前按 UTF-8 损失转换为字符串。