WebSocketPeer

Inherits: PacketPeer < Reference < Object

表示特定WebSocket连接的类。

描述

该类表示特定的 WebSocket 连接,你可以用它执行底层操作。

可以选择以二进制或文本模式写入套接字,也可以识别另一个对等体用于写入的模式。

方法

void

close ( int code=1000, String reason=”” )

String

get_connected_host ( ) const

int

get_connected_port ( ) const

int

get_current_outbound_buffered_amount ( ) const

WriteMode

get_write_mode ( ) const

bool

is_connected_to_host ( ) const

void

set_no_delay ( bool enabled )

void

set_write_mode ( WriteMode mode )

bool

was_string_packet ( ) const

枚举

enum WriteMode:

  • WRITE_MODE_TEXT = 0 —- 指定WebSockets消息应作为文本有效载荷传输(只允许有效的UTF-8)。

  • WRITE_MODE_BINARY = 1 —- 指定WebSockets消息应以二进制有效载荷的形式传输(允许任何字节组合)。

方法说明

  • void close ( int code=1000, String reason=”” )

关闭此WebSocket连接。code是关闭的状态代码,有效状态代码的列表参阅RFC 6455第7.4节。reason 是关闭连接的只读原因(可以是任何小于123字节的UTF-8字符串)。

注意:为了实现彻底的关闭,你需要继续轮询,直到收到WebSocketClient.connection_closedWebSocketServer.client_disconnected

注意: HTML5导出可能不支持所有状态代码。请参考特定浏览器的文档以了解更多细节。


  • String get_connected_host ( ) const

返回连接的对等体的IP地址。

注意: 在HTML5导出中不可用。


  • int get_connected_port ( ) const

返回所连接对等体的远程端口。

注意: 在HTML5导出中不可用。


  • int get_current_outbound_buffered_amount ( ) const

返回输出的websocket缓冲区中的当前数据量。注意: HTML5导出使用WebSocket.bufferedAmount,而其他平台使用内部缓冲区。


获取当前选择的写入模式。参阅WriteMode


  • bool is_connected_to_host ( ) const

如果该对等体当前已连接,则返回true


  • void set_no_delay ( bool enabled )

在底层的TCP套接字上禁用Nagle算法(默认)。参阅StreamPeerTCP.set_no_delay以了解更多信息。

注意: 在HTML5导出中不可用。


将套接字设置为使用给定的WriteMode


  • bool was_string_packet ( ) const

如果最后收到的数据包是作为文本有效载荷发送的,返回true。参阅WriteMode