移动域名解析HTTPDNS

    3.解析接口

    3.1 解析接口的返回值类型

    • 说明:使用BDHttpDnsResult类型对解析结果进行封装
    • 属性:

      1. @property (readonly) NSInteger status;
      • 说明:域名解析结果的状态码,可能取值为:
      状态码取值 说明
      BDHttpDnsStatusOK 解析成功
      BDHttpDnsStatusErrCacheMiss 由于cache未命中导致的解析失败,仅在解析时指定cache only标志时有效
      BDHttpDnsStatusErrDnsResolve dns解析失败
      1. @property (readonly) NSInteger type;
      • 说明:域名解析结果的来源,可能取值为:
      解析来源类型取值 说明
      BDHttpDnsResolveNone 没有有效的解析结果
      BDHttpDnsResolveFromHttpDnsCache 解析结果来自httpdns cache
      BDHttpDnsResolveFromHttpDnsExpiredCache 解析结果来自过期的httpdns cache
      BDHttpDnsResolveFromDnsCache 解析结果来自dns cache
      BDHttpDnsResolveFromDns 解析结果来自dns解析
      1. @property (nullable, readonly, copy) NSArray *ipv4List;
      • 说明:IPv4类型的域名解析结果列表,可能为nil
      1. @property (nullable, readonly, copy) NSArray *ipv6List;
      • 说明:IPv6类型的域名解析结果列表,可能为nil

    3.2 同步域名解析接口

    • 接口形式:- (BDHttpDnsResult*)syncResolve:(NSString *)host cacheOnly:(BOOL)cacheOnly;
    • 参数:

      • (NSString *)host:待解析域名
      • (BOOL)cacheOnly:是否仅使用HTTPDNS cache

        • 为True时,若HTTPDNS cache未命中,则接口返回空结果,此时接口表现为同步非阻塞接口
        • 为False时,若HTTPDNS cache未命中,则SDK继续进行DNS解析,此时接口表现为同步阻塞接口
    • 返回值:

      • 使用 BDHttpDnsResult封装的解析结果

    3.3 异步域名解析接口

    • 建议用户使用同步接口,假如使用异步的话,联系百度云客服进行详细咨询
    • 接口形式:- (void)asyncResolve:(NSString *)host completionHandler:(void (^)(BDHttpDnsResult*))completionHandler;
    • 参数:

      • (NSString *)host:待解析域名
      • (void (^)(BDHttpDnsResult*))completionHandler:异步解析回调函数,参数为使用 BDHttpDnsResult封装的解析结果
    一篇
    2.设置接口
    一篇
    4.使用建议