Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

PacketPeerDTLS

继承: PacketPeer < RefCounted < Object

DTLS 数据包客户端。

描述

这个类表示 DTLS 对等体连接。它可以用来连接到 DTLS 服务器,由 DTLSServer.take_connection 返回。

注意:导出到 Android 时,在导出项目或使用一键部署前,请确保在 Android 导出预设中启用 INTERNET 权限。否则,任何类型的网络通信都将被 Android 阻止。

警告:目前不支持 TLS 证书撤销和证书绑定。只要撤销的证书在其他方面有效,就会被接受。如果这是一个问题,可以使用有效期较短的自动管理证书。

方法

Error

connect_to_peer(packet_peer: PacketPeerUDP, hostname: String, client_options: TLSOptions = null)

void

disconnect_from_peer()

Status

get_status() const

void

poll()


枚举

enum Status: 🔗

Status STATUS_DISCONNECTED = 0

表示已断开连接的 PacketPeerDTLS 的状态。

Status STATUS_HANDSHAKING = 1

表示当前正在与远程对等方进行握手的 PacketPeerDTLS 的状态。

Status STATUS_CONNECTED = 2

表示连接到远程对等方的 PacketPeerDTLS 的状态。

Status STATUS_ERROR = 3

表示处于一般错误状态的 PacketPeerDTLS 的状态。

Status STATUS_ERROR_HOSTNAME_MISMATCH = 4

显示主机提供的 DTLS 证书域与请求验证的域不匹配的错误状态。


方法说明

Error connect_to_peer(packet_peer: PacketPeerUDP, hostname: String, client_options: TLSOptions = null) 🔗

连接 packet_peer 并开始使用底层的 PacketPeerUDP 进行 DTLS 握手,进行握手时 PacketPeerUDP 必须已连接(见 PacketPeerUDP.connect_to_host)。你还可以指定验证 TLS 连接时使用的 client_options。见 TLSOptions.clientTLSOptions.client_unsafe


void disconnect_from_peer() 🔗

断开此对等体的连接,终止 DTLS 会话。


Status get_status() const 🔗

返回连接的状态。取值见 Status


void poll() 🔗

轮询连接以检查传入的数据包。经常调用此选项以更新状态并保持连接正常工作。