Options
All
  • Public
  • Public/Protected
  • All
Menu

UDP 适配接口

Hierarchy

  • IUdp

Implemented by

Index

Methods

addListener

  • addListener<K>(event: K, listener: UDPEvents[K]): void

addMembership

  • addMembership(multicastAddress: string, multicastInterface?: string): Promise<void>
  • 加入多播组

    Parameters

    • multicastAddress: string

      必选,多播组地址

    • Optional multicastInterface: string

      可选,加入多播组的接口。网卡

    Returns Promise<void>

bind

  • bind(port?: number, address?: string): Promise<AddressInfo>
  • 对于 UDP 套接字,使 Socket 在命名的 port 和可选的 address 上监听数据报消息。 如果未指定 port 或 0,则操作系统将尝试绑定到随机端口。如果未指定 address,则操作系统将尝试监听所有地址。 一旦绑定完成,则会触发 'listening' 事件

    Parameters

    • Optional port: number

      可选,本地端口号。没指定时自动分配。

    • Optional address: string

      可选,本地IP或域名。

    Returns Promise<AddressInfo>

    异步返回 AddressInfo 本地地址信息

close

  • close(): Promise<void>
  • 关闭底层套接字并停止监听其上的数据。 如果提供回调,则将其添加为 'close' 事件的监听器。

    Returns Promise<void>

connect

  • connect(port: number, address?: string): Promise<void>
  • 关联远程地址和端口。关联后,发送数据无需指定端口和地址。

    Parameters

    • port: number

      必选,指定端口号

    • Optional address: string

      可选,远程IP或域名。

    Returns Promise<void>

createSocket

dropMembership

  • dropMembership(multicastAddress: string, multicastInterface?: string): Promise<void>
  • 退出多播组

    Parameters

    • multicastAddress: string

      必选,多播组地址

    • Optional multicastInterface: string

      可选,加入多播组的接口。网卡

    Returns Promise<void>

emit

  • emit<K>(event: K, ...args: Parameters<UDPEvents[K]>): void
  • Type parameters

    Parameters

    • event: K
    • Rest ...args: Parameters<UDPEvents[K]>

    Returns void

getLocalAddress

  • 返回包含套接字地址信息的对象。 对于 UDP 套接字,此对象将包含 address、family 和 port 属性。如果在未绑定的套接字上调用此方法将抛出 EBADF。

    Returns Promise<AddressInfo>

    异步返回 AddressInfo 本地地址信息

getRemoteAddress

  • 返回包含远程端点的 address、family 和 port 的对象。如果未连接,抛出 ERR_SOCKET_DGRAM_NOT_CONNECTED 异常

    Returns Promise<AddressInfo>

    异步返回 AddressInfo 本地地址信息

on

  • on<K>(event: K, listener: UDPEvents[K]): void

once

  • once<K>(event: K, listener: UDPEvents[K]): void

send

  • 在套接字上广播数据报。对于无连接套接字,则必须指定目标 port 和 address。另一方面,已连接的套接字将使用其关联的远程端点,因此不得设置 port 和 address 参数。

    Parameters

    • msg: UDPMsg

      必选,包含要发送的消息,字符串或buffer数组

    • Optional options: UDPSendOptionsType

      可选,发送接口的参数

    Returns Promise<number>

    已发送的字节数

setBroadcast

  • setBroadcast(flag: boolean): Promise<void>
  • 设置是否广播

    Parameters

    • flag: boolean

      必选,设置是否广播

    Returns Promise<void>

setMulticastInterface

  • setMulticastInterface(multicastInterface: string): Promise<void>
  • 设置广播/多播接口,网卡

    Parameters

    • multicastInterface: string

      必选,网络接口(网卡)名称

    Returns Promise<void>

setMulticastLoopback

  • setMulticastLoopback(flag: boolean): Promise<void>
  • 设置或清除 IP_MULTICAST_LOOP 套接字选项。 当设置为 true 时,本地接口也会收到多播数据包。如果在未绑定的套接字上调用此方法将抛出 EBADF。

    Parameters

    • flag: boolean

      必选,是否开启loopback

    Returns Promise<void>

setMulticastTTL

  • setMulticastTTL(ttl: number): Promise<void>
  • 设置 IP_MULTICAST_TTL socket参数(TTL for Time to Live)。

    Parameters

    • ttl: number

      必选,ttl参数范围0-255,大部分系统默认为1

    Returns Promise<void>

setRecvBufferSize

  • setRecvBufferSize(size: number): Promise<void>
  • 设置 SO_RCVBUF 套接字选项。设置最大套接字接收缓冲区(以字节为单位)。 如果在未绑定的套接字上调用此方法将抛出 ERR_SOCKET_BUFFER_SIZE。

    Parameters

    • size: number

      必选,缓存大小

    Returns Promise<void>

setSendBufferSize

  • setSendBufferSize(size: number): Promise<void>
  • 设置 SO_SNDBUF 套接字选项。设置最大套接字发送缓冲区(以字节为单位)。

    Parameters

    • size: number

      必选,缓存大小

    Returns Promise<void>

setTTL

  • setTTL(ttl: number): Promise<void>
  • 设置 IP_TTL socket参数。如果socket未绑定地址,会抛出 EBADF 异常

    Parameters

    • ttl: number

      必选,ttl参数范围1-255,大部分系统默认为64

    Returns Promise<void>

Generated using TypeDoc