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_packet和get_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作为数据包。