StreamPeer

Inherits: Reference < Object

继承人: StreamPeerBufferStreamPeerGDNativeStreamPeerSSLStreamPeerTCP

类别: 核心

简要说明

基于流的协议的抽象和基类。

属性

bool

big_endian

方法

int

get_16 ( )

int

get_32 ( )

int

get_64 ( )

int

get_8 ( )

int

get_available_bytes ( ) const

Array

get_data ( int bytes )

float

get_double ( )

float

get_float ( )

Array

get_partial_data ( int bytes )

String

get_string ( int bytes=-1 )

int

get_u16 ( )

int

get_u32 ( )

int

get_u64 ( )

int

get_u8 ( )

String

get_utf8_string ( int bytes=-1 )

Variant

get_var ( bool allow_objects=false )

无效

put_16 ( int value )

无效

put_32 ( int value )

无效

put_64 ( int value )

无效

put_8 ( int value )

Error

put_data ( PoolByteArray data )

无效

put_double ( float value )

无效

put_float ( float value )

Array

put_partial_data ( PoolByteArray data )

无效

put_string ( String value )

无效

put_u16 ( int value )

无效

put_u32 ( int value )

无效

put_u64 ( int value )

无效

put_u8 ( int value )

无效

put_utf8_string ( String value )

无效

put_var ( Variant value, bool full_objects=false )

描述

streampeer是基于流的协议(如TCP或Unix套接字)的抽象和基类。它提供了一个API,用于通过流作为原始数据或字符串发送和接收数据。

属性描述

违约

设定器

设置“大”字(值)

吸气剂

是否启用了“大结尾”()

如果 true ,这个 StreamPeer 将使用big-endian格式进行编码和解码。

方法说明

  • int get_16 ( )

从流中获取有符号的16位值。

  • int get_32 ( )

从流中获取有符号的32位值。

  • int get_64 ( )

从流中获取有符号的64位值。

  • int get_8 ( )

从流中获取有符号字节。

  • int get_available_bytes ( ) const

返回此 StreamPeer 有可用的。

返回具有接收字节的块数据。可以在 bytes 参数。如果没有足够的字节可用,函数将阻塞,直到收到所需的量。此函数返回两个值, Error 代码和数据数组。

从流中获取双精度浮点。

从流中获取单个精度浮点。

返回具有接收字节的块数据。可以在“bytes”参数中请求接收的字节数。如果没有足够的字节可用,函数将返回实际接收的字节数。此函数返回两个值, Error 代码和数据数组。

获取具有字节长度的字符串 bytes 从小溪中。如果 bytes 为负(默认值),将使用反向过程从流中读取长度 put_string .

  • int get_u16 ( )

从流中获取无符号16位值。

  • int get_u32 ( )

从流中获取无符号32位值。

  • int get_u64 ( )

从流中获取一个无符号的64位值。

  • int get_u8 ( )

从流中获取无符号字节。

获取字节长度为的UTF-8字符串 bytes 从流中(这将解码作为UTF-8发送的字符串)。如果 bytes 为负(默认值),将使用反向过程从流中读取长度 put_utf8_string .

从流中获取变量。如果 allow_objectstrue ,允许解码对象。

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

  • void put_16 ( int value )

将有符号的16位值放入流中。

  • void put_32 ( int value )

将有符号的32位值放入流中。

  • void put_64 ( int value )

将有符号的64位值放入流中。

  • void put_8 ( int value )

将有符号字节放入流中。

通过连接发送一个数据块,必要时阻塞,直到完成数据发送。此函数返回 Error 代码。

  • void put_double ( float value )

将双精度浮点放入流中。

  • void put_float ( float value )

向流中放入一个单精度浮点。

通过连接发送数据块。如果不能同时发送所有数据,那么只有部分数据可以发送。此函数返回两个值, Error 代码和整数,描述实际发送的数据量。

  • void put_string ( String value )

将以零结尾的ASCII字符串放入流中,该字符串前面有一个表示其大小的32位无符号整数。

  • void put_u16 ( int value )

将无符号16位值放入流中。

  • void put_u32 ( int value )

将无符号32位值放入流中。

  • void put_u64 ( int value )

将无符号64位值放入流中。

  • void put_u8 ( int value )

将无符号字节放入流中。

  • void put_utf8_string ( String value )

将以零结尾的utf-8字符串放入流中,该字符串前面有一个表示其大小的32位无符号整数。

  • void put_var ( Variant value, bool full_objects=false )

将变量放入流中。如果 full_objectstrue 允许对对象进行编码(并且可能包括代码)。