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.
Checking the stable version of the documentation...
IP
繼承: Object
網際協定(IP)支援函式,如 DNS 解析。
說明
IP 包含網際協定(IP)的支援函式。TCP/IP 的支援在其他類中(請參閱 StreamPeerTCP 和 TCPServer)。IP 提供 DNS 主機名稱解析支援,包括阻塞式和線程式。
方法
void |
clear_cache(hostname: String = "") |
void |
erase_resolve_item(id: int) |
get_local_addresses() const |
|
get_local_interfaces() const |
|
get_resolve_item_address(id: int) const |
|
get_resolve_item_addresses(id: int) const |
|
get_resolve_item_status(id: int) const |
|
resolve_hostname(host: String, ip_type: Type = 3) |
|
resolve_hostname_addresses(host: String, ip_type: Type = 3) |
|
resolve_hostname_queue_item(host: String, ip_type: Type = 3) |
列舉
enum ResolverStatus: 🔗
ResolverStatus RESOLVER_STATUS_NONE = 0
DNS 主機名稱解析器狀態:無狀態。
ResolverStatus RESOLVER_STATUS_WAITING = 1
DNS 主機名稱解析器狀態:正在等待。
ResolverStatus RESOLVER_STATUS_DONE = 2
DNS 主機名稱解析器狀態:完成。
ResolverStatus RESOLVER_STATUS_ERROR = 3
DNS 主機名稱解析器狀態:錯誤。
enum Type: 🔗
Type TYPE_NONE = 0
網址類別型:無。
Type TYPE_IPV4 = 1
網址類別型:網際協議版本 4(IPv4)。
Type TYPE_IPV6 = 2
網址類別型:網際協議版本 6(IPv6)。
Type TYPE_ANY = 3
網址類別型:任意。
常數
RESOLVER_MAX_QUERIES = 256 🔗
允許的最大併發 DNS 解析器查詢數量,如果超過,則返回 RESOLVER_INVALID_ID。
RESOLVER_INVALID_ID = -1 🔗
無效的 ID 常數。在超過 RESOLVER_MAX_QUERIES 時返回。
方法說明
void clear_cache(hostname: String = "") 🔗
移除所有 hostname 主機名稱的快取引用。如果沒有給出 hostname,所有快取的 IP 地址將被刪除。
void erase_resolve_item(id: int) 🔗
從佇列中刪除一個給定的專案 id。這應該被用來在佇列完成後釋放佇列,以便進行更多的查詢。
PackedStringArray get_local_addresses() const 🔗
以陣列形式返回所有使用者的目前 IPv4 和 IPv6 地址。
Array[Dictionary] get_local_interfaces() const 🔗
以陣列形式返回所有網路介面卡。
每個適配器都是一個以下形式的字典:
{
"index":"1", # 介面索引。
"name":"eth0", # 介面名稱。
"friendly":"Ethernet One", # 友好的名字(可能是空的)。
"address":["192.168.1.101"], # 與此介面相關的 IP 位址陣列。
}
String get_resolve_item_address(id: int) const 🔗
給定佇列 id,返回排隊主機名稱的 IP 位址。出現錯誤或解析尚未發生時返回一個空字串(見 get_resolve_item_status())。
Array get_resolve_item_addresses(id: int) const 🔗
如果發生錯誤或尚未發生解析,則返回已解析的位址或空陣列(請參閱 get_resolve_item_status())。
ResolverStatus get_resolve_item_status(id: int) const 🔗
給定佇列 id,以 ResolverStatus 常數的形式返回排隊主機名稱的狀態。
String resolve_hostname(host: String, ip_type: Type = 3) 🔗
在解析時返回一個給定的主機名稱的 IPv4 或 IPv6 位址(阻塞型別方法)。返回的地址型別取決於作為 ip_type 的 Type 常數。
PackedStringArray resolve_hostname_addresses(host: String, ip_type: Type = 3) 🔗
以阻塞方式解析給定的主機名稱。位址作為 IPv4 或 IPv6 的 Array 陣列返回,具體取決於 ip_type。
int resolve_hostname_queue_item(host: String, ip_type: Type = 3) 🔗
建立一個佇列專案,根據 Type 常數 ip_type,將主機名稱解析為 IPv4 或 IPv6 地址。如果成功,則返回佇列 ID,否則返回 RESOLVER_INVALID_ID。