Options
All
  • Public
  • Public/Protected
  • All
Menu

Class WebSocketServer

表示一个 WebSocket 服务器

Hierarchy

  • EventEmitter
    • WebSocketServer

Index

Constructors

constructor

  • 初始化新的 WebSocket 服务器

    Parameters

    • server: HTTPServer | HTTPSServer | string | UrlObject | URL

      关联的 HTTP 服务器或服务器地址(如 ws://0.0.0.0/chat

    • Optional options: WebSocketServerOptions

      附加选项

    Returns WebSocketServer

Properties

Optional backlog

backlog: number

获取允许的最大连接数

connections

connections: Set<WebSocket> = new Set<WebSocket>()

获取所有已打开的连接

existingServer

existingServer: boolean

判断当前服务器对象是否关联了已在外部创建的服务器对象

Optional extension

获取所有扩展协议

Optional hostname

hostname: string

获取配置的服务器主机地址

maxBufferSize

maxBufferSize: number = 100 * 1024 * 1024

获取允许客户端发送的每个数据块的最大字节数

Optional path

path: string

获取监听的服务器路径

Optional port

port: number

获取配置的服务器端口

server

server: HTTPServer | HTTPSServer

获取关联的 HTTP 服务器

Protected Optional verify

verify: function

当被子类重写后负责验证是否允许指定的客户端连接

param

当前的请求对象

param

当前的 TCP/IP 套接字对象

param

当前的 WebSocket 服务器

Type declaration

    • (request: IncomingMessage, socket: Socket, server: WebSocketServer): boolean | Promise<boolean>
    • Parameters

      Returns boolean | Promise<boolean>

Static defaultMaxListeners

defaultMaxListeners: number

Accessors

isSecure

  • get isSecure(): boolean
  • 判断当前服务器是否使用了加密传输协议(HTTPS)

    Returns boolean

url

  • get url(): string
  • 获取当前服务器的根地址,如果服务器未在监听则返回 undefined

    Returns string

Methods

Protected abortUpgrade

  • abortUpgrade(socket: Socket, code: number): void
  • 当被子类重写后负责停止升级操作

    Parameters

    • socket: Socket

      当前的 TCP/IP 套接字对象

    • code: number

      响应的 HTTP 错误码

    Returns void

addListener

  • addListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

address

  • address(): AddressInfo
  • 获取当前服务器正在监听的地址,如果服务未启动则返回空

    Returns AddressInfo

close

  • close(): Promise<boolean>
  • 关闭当前服务器

    Returns Promise<boolean>

    如果服务器已成功关闭,返回 true,如果服务器未启动,返回 false

emit

  • emit(event: string | symbol, ...args: any[]): boolean
  • Parameters

    • event: string | symbol
    • Rest ...args: any[]

    Returns boolean

eventNames

  • eventNames(): Array<string | symbol>
  • Returns Array<string | symbol>

getMaxListeners

  • getMaxListeners(): number
  • Returns number

Protected handleError

  • handleError(error: Error): void
  • 处理服务器错误事件

    Parameters

    • error: Error

      发生的错误对象

    Returns void

Protected handleListening

  • handleListening(): void
  • 处理服务器开始监听事件

    Returns void

handleUpgrade

  • handleUpgrade(request: IncomingMessage, socket: Socket, head: Buffer): Promise<void>
  • 处理 HTTP 协议升级事件

    Parameters

    • request: IncomingMessage

      当前的请求对象

    • socket: Socket

      当前的 TCP/IP 套接字对象

    • head: Buffer

      请求头的原始流

    Returns Promise<void>

listenerCount

  • listenerCount(type: string | symbol): number
  • Parameters

    • type: string | symbol

    Returns number

listeners

  • listeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

off

  • off(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

on

  • on(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

Protected onConnection

  • 当有新的客户端连接时执行

    Parameters

    • ws: WebSocket

      用于和客户端通信的 WebSocket 对象

    Returns void

once

  • once(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

prependListener

  • prependListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

prependOnceListener

  • prependOnceListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

rawListeners

  • rawListeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

ref

  • ref(): this
  • 使当前进程等待当前服务器停止后退出

    Returns this

removeAllListeners

  • removeAllListeners(event?: string | symbol): this
  • Parameters

    • Optional event: string | symbol

    Returns this

removeListener

  • removeListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

Protected selectProtocol

  • selectProtocol(protocols: string[]): string
  • 当被子类重写后负责选择合适的子协议

    Parameters

    • protocols: string[]

      所有可用的子协议

    Returns string

send

  • send(data: string | Buffer): void
  • 向所有客户端发送数据

    Parameters

    • data: string | Buffer

      要发送的数据

    Returns void

setMaxListeners

  • setMaxListeners(n: number): this
  • Parameters

    • n: number

    Returns this

start

  • start(): Promise<void>
  • 启动服务器

    Returns Promise<void>

unref

  • unref(): this
  • 允许当前进程不等待当前服务器停止直接退出

    Returns this

Static listenerCount

  • listenerCount(emitter: EventEmitter, event: string | symbol): number
  • deprecated

    since v4.0.0

    Parameters

    • emitter: EventEmitter
    • event: string | symbol

    Returns number

Generated using TypeDoc