日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

域名解析接口

同步非阻塞解析域名接口

使用同步非阻塞接口解析域名,不會阻塞當前線程,但可能會返回空結果。

該接口僅查詢緩存,返回緩存查詢的解析結果。若緩存中沒有解析結果或者緩存中的解析結果已經TTL過期,則會在工作線程中進行域名解析,解析成功后更新緩存,供下次調用域名解析使用。

本接口提供了常規版本、使用軟件自定義解析的版本。

接口定義

- (nullable HttpdnsResult *)resolveHostSyncNonBlocking:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType;

- (nullable HttpdnsResult *)resolveHostSyncNonBlocking:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType withSdnsParams:(NSDictionary<NSString *, NSString *> *)sdnsParams sdnsCacheKey:(NSString *)cacheKey;

- (nullable HttpdnsResult *)resolveHostSyncNonBlocking:(HttpdnsRequest *)request;

說明
  • 本接口于v3.0.0版本中新增。

所屬類

HttpDnsService

參數定義

參數

類型

是否必填

說明

host

NSString *

待解析域名

queryIpType

HttpdnsQueryIPType

待解析的IP類型。使用HttpdnsQueryIPType

枚舉類型,代表解析哪種類型的IP:

  • v4:需要解析的類型為IPv4

  • v6:需要解析的類型為IPv6

  • both:需要解析的類型為IPv4和IPv6

  • auto:SDK內部根據設備當前的網絡棧情況判斷,默認解析ipv4地址,如果當前網絡棧支持ipv6,也會嘗試解析ipv6的地址

sdnsParams

NSDictionary<NSString *, NSString *> *

軟件自定義解析參數

cacheKey

NSString *

軟件自定義解析自定義緩存key

request

HttpdnsRequest *

參考 解析相關數據結構

返回說明

類型

說明

HttpdnsResult *

解析結果,參考 解析相關數據結構

同步解析域名接口

使用同步解析接口解析域名,會阻塞當前線程,直到獲得有效解析結果并返回。

該接口首先查詢緩存,若緩存存在可用的解析結果則立即返回緩存解析結果,若緩存中沒有可用的解析結果,則會阻塞當前調用解析的線程并且在工作線程中進行域名解析,等域名解析完成返回解析結果,或達到超時時間返回空值。

本接口提供了常規版本、使用軟件自定義解析的版本。

說明
  • 本接口于v3.0.0版本中新增。

  • 為了防止在主線程中誤用本接口導致APP卡頓,本接口會做檢測,若發現調用線程是主線程,則自動降級到resolveHostSyncNonBlocking接口的實現邏輯。

  • 本接口默認超時時間為2秒,若超時時間內未能請求到有效結果,會返回nil。超時時間可以通過request對象定制。

接口定義

- (nullable HttpdnsResult *)resolveHostSync:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType;

- (nullable HttpdnsResult *)resolveHostSync:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType withSdnsParams:(NSDictionary<NSString *, NSString *> *)sdnsParams sdnsCacheKey:(NSString *)cacheKey;

- (nullable HttpdnsResult *)resolveHostSync:(HttpdnsRequest *)request;

所屬類

HttpDnsService

參數定義

參數

類型

是否必填

說明

host

NSString *

待解析域名

queryIpType

HttpdnsQueryIPType

待解析的IP類型。使用HttpdnsQueryIPType

枚舉類型,代表解析哪種類型的IP:

  • v4:需要解析的類型為IPv4

  • v6:需要解析的類型為IPv6

  • both:需要解析的類型為IPv4和IPv6

  • auto:SDK內部根據設備當前的網絡棧情況判斷,默認解析ipv4地址,如果當前網絡棧支持ipv6,也會嘗試解析ipv6的地址

sdnsParams

NSDictionary<NSString *, NSString *> *

軟件自定義解析參數

cacheKey

NSString *

軟件自定義解析自定義緩存key

request

HttpdnsRequest *

參考 解析相關數據結構

返回說明

類型

說明

HttpdnsResult *

解析結果,參考 解析相關數據結構

異步解析域名接口

使用異步解析接口解析域名,不會阻塞當前線程,解析結果會通過回調的形式返回。

該接口首先查詢緩存,若緩存存在可用的解析結果則立即通過回調返回緩存解析結果,若緩存中沒有可用的解析結果,則會在工作線程中進行域名解析,等域名解析結束或者達到超時時間再通過回調返回解析結果。

本接口提供了常規版本、使用軟件自定義解析的版本。

接口定義

- (void)resolveHostAsync:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType completionHandler:(void (^)(HttpdnsResult * nullable))handler;

- (void)resolveHostAsync:(NSString *)host byIpType:(HttpdnsQueryIPType)queryIpType withSdnsParams:(NSDictionary<NSString *, NSString *> *)sdnsParams sdnsCacheKey:(NSString *)cacheKey completionHandler:(void (^)(HttpdnsResult * nullable))handler;

- (void)resolveHostAsync:(HttpdnsRequest *)request completionHandler:(void (^)(HttpdnsResult * nullable))handler;

說明
  • 本接口于v3.0.0版本中新增。

  • 本接口默認超時時間為2秒,若超時時間內未能請求到有效結果,會回調nil。超時時間可以通過request對象定制。

所屬類

HttpDnsService

參數定義

參數

類型

是否必填

說明

host

NSString *

待解析域名

queryIpType

HttpdnsQueryIPType

待解析的IP類型。使用HttpdnsQueryIPType

枚舉類型,代表解析哪種類型的IP:

  • v4:需要解析的類型為IPv4

  • v6:需要解析的類型為IPv6

  • both:需要解析的類型為IPv4和IPv6

  • auto:SDK內部根據設備當前的網絡棧情況判斷,默認解析ipv4地址,如果當前網絡棧支持ipv6,也會嘗試解析ipv6的地址

handler

(void (^)(HttpdnsResult * nullable))

解析結果回調

sdnsParams

NSDictionary<NSString *, NSString *> *

軟件自定義解析參數

cacheKey

NSString *

軟件自定義解析自定義緩存key

request

HttpdnsRequest *

參考 解析相關數據結構

回調結果說明

類型

說明

HttpdnsResult *

解析結果,參考 解析相關數據結構

清空域名緩存

使用阿里云域名解析服務的用戶,調用該接口主動清除本地緩存,可實現秒級域名配置生效。 例如:假設域名xxx.com,解析IP地址為ip1,當ip1遭受攻擊,需要將流量遷移至ip2,實現流程如下:

  1. 首先,用戶在云解析控制臺將域名對應IP修改為ip2,此時在HTTPDNS服務端會立即獲取到此變更信息,并清除服務端該域名的ip1緩存。

  2. 用戶手動調用此接口,清空xxx.com域名的本地緩存。

  3. App端清空緩存后的下一次請求,會使得服務端重新請求權威服務器,獲取最新解析IP地址ip2,從而使前端解析結果立即生效為ip2。

本接口提供指定域名列表清理緩存,和清理全部域名緩存兩種調用形式。

重要
  • 該功能僅適用于SDK v2.0.4及以上版本。其中新增的cleanAllHostCache接口適用于v3.1.0及以上版本。

  • 清除操作同時清除內存緩存和本地持久化沙箱緩存。

接口定義

- (void)cleanHostCache:(NSArray <NSString *>*)hostArray;

- (void)cleanAllHostCache;

參數說明

參數

類型

是否必填

說明

hostArray

NSArray <NSString *>*

需要清除的host域名數組。如果需要清空全部數據,傳nil或者空數組即可

解析相關數據結構

HTTPDNS iOS SDK提供的域名解析接口主要涉及兩個自定義結構:HttpdnsRequestHttpdnsResult

HttpdnsRequest

解析請求類,包裝域名解析相關的請求參數。

參數

類型

是否必填

說明

host

NSString *

待解析域名。

queryIpType

HttpdnsQueryIPType

待解析的IP類型。使用HttpdnsQueryIPType

枚舉類型,代表解析哪種類型的IP:

  • v4:需要解析的類型為IPv4

  • v6:需要解析的類型為IPv6

  • both:需要解析的類型為IPv4和IPv6

  • auto:SDK內部根據設備當前的網絡棧情況判斷,默認解析ipv4地址,如果當前網絡棧支持ipv6,也會嘗試解析ipv6的地址

resolveTimeoutInSecond

double

解析超時時間,對于同步接口,即為最大等待時間,對于異步接口,即為最大等待回調時間。默認2秒,可配置范圍為0.5秒到5秒。

單位為秒

sdnsParams

NSDictionary<NSString *, NSString *> *

軟件自定義解析參數

cacheKey

NSString *

軟件自定義解析自定義緩存key

HttpdnsResult

解析結果類,包裝域名解析成功后的返回結果。注意,以下幾種情況,會導致解析接口獲得空值:

  • 域名解析不到地址,如遞歸解析不到ip記錄

  • 未在HTTPDNS控制臺添加該域名,導致服務端無法解析

  • 解析失敗,如發生網絡異常問題

  • 使用同步非阻塞接口時,若在本地緩存沒有立即找到緩存記錄,也會先返回空值

參數

類型

說明

host

NSString *

解析的域名

ips

NSArray<NSString *> *

解析到的ipv4的地址列表

ipv6s

ipv6s

解析到的ipv6的地址列表

lastUpdatedTimeInterval

NSTimeInterval

最后一次更新該域名ipv4解析結果的時間。Unix時間戳,單位秒

ttl

NSTimeInterval

該域名ipv4結果的ttl,單位秒