net.connect

net.connect

net.connect

功能

建立 TCP、UDP 或 WebSocket 客户端连接。

语法

参数

参数类型必填默认值说明
configObject连接配置对象。公共字段和协议字段见下方。

连接配置字段

字段类型适用 type必填默认值说明
typeString全部连接协议类型。可选值为 tcpudpws
hostStringtcp/udp远端主机名或 IP 地址,例如 127.0.0.1example.com
portInttcp/udp远端端口号,范围为 0 到 65535。
timeoutInttcp0TCP 连接、读写超时时间,单位毫秒;小于等于 0 表示不设置超时。
urlStringwsWebSocket 完整连接地址,例如 ws://127.0.0.1:9002/ws

返回值

类型说明
TcpClient/UdpSocket/WsSockettype 返回对应连接句柄。

连接句柄字段

字段类型说明
addrString连接目标或本地 socket 地址,格式通常为 host:port
typeString连接类型。TCP 返回 tcp,UDP 返回 udp,WebSocket 返回 ws

连接句柄方法

类型方法返回值说明
TcpClientwrite(data) / send(data)Int写入 TCP String、字节数组或 Bytes,返回写入字节数。
TcpClientread()String同步读取一段 TCP 数据,按 UTF-8 lossy 转为字符串。
TcpClientread_bytes()Bytes同步读取一段 TCP 原始字节。
TcpClientclose()Bool关闭 TCP 连接。
UdpSocketsend(data)Int向 connect 配置中的默认远端地址发送 UDP 数据,返回发送字节数。
UdpSocketsend(data, addr)Int向指定 host:port 发送 UDP 数据,返回发送字节数。
UdpSocketclose()Bool关闭 UDP socket。
WsSocketsend(data) / write(data)Bool发送 WebSocket 消息;String 为文本帧,Bytes 或字节数组为二进制帧。
WsSocketclose()Bool关闭 WebSocket 连接。
WsSocketon_message(fn(message) {}, binary)WsSocket注册 WebSocket 客户端消息回调;第二个参数为 true 时 message 为 Bytes。
WsSocketon_close(fn() {})WsSocket注册 WebSocket 客户端关闭回调。
WsSocketon_error(fn(message) {})WsSocket注册 WebSocket 客户端错误回调。

示例

注意事项

  • TCP 和 UDP 使用 hostport 字段;WebSocket 使用完整 url 字段。
  • WebSocket 不支持同步 read();请通过 on_message() 接收消息。
  • 需要接收二进制消息时,TCP 可使用 read_bytes(),监听回调可在 net.listen 配置中设置 binary: true