跳转至

PacketPeer

继承

Reference

简要描述

基于数据包的协议的抽象和基类。

描述

PacketPeer是基于数据包的协议(例如UDP)的抽象和基类。

成员

类型 属性名 默认值
bool allow_object_decoding false
int encode_buffer_max_size 8388608

方法

返回值类型 方法名称
int get_available_packet_count() const
PoolByteArray get_packet()
int get_packet_error() const
Variant get_var(allow_objects: bool = false)
int put_packet(buffer: PoolByteArray)
int put_var(var: Variant, full_objects: bool = false)

常量

成员说明

  • bool allow_object_decoding
Default false
setter set_allow_object_decoding(value)
getter is_object_decoding_allowed
  • int encode_buffer_max_size
Default 8388608
setter set_encode_buffer_max_size(value)
getter get_encode_buffer_max_size

方法说明

  • get_available_packet_count get_available_packet_count() const

返回循环缓冲区中当前可用的数据包数。


  • get_packet get_packet()

获取原始数据包。


  • get_packet_error get_packet_error() const

返回接收到的最后一个数据包的错误状态(通过get_packetget_var)。


  • get_var get_var(allow_objects: bool = false)

获取变体。如果allow_objects(或allow_object_decoding)为true,则允许解码对象。

**警告:**反序列化的对象可以包含要执行的代码。如果序列化的对象来自不受信任的来源,请不要使用此选项,以避免潜在的安全威胁,例如远程执行代码。


  • put_packet put_packet(buffer: PoolByteArray)

发送原始数据包。


  • put_var put_var(var: Variant, full_objects: bool = false)

发送Variant作为数据包。