缓存 优势:最大程度的避免使用DNS解析,减小劫持的风险 劣势:HTTPDNS服务异常时,无法降级至DNS,无法感知域名切换 Tolerant 说明:一定程度的容忍过期缓存的策略,使用过期缓存,直至获取下一次HTTPDNS服务端的请求结果 若请求成功,则更新缓存 若请求失败,则删除缓存,提供降级机制 优势:常态下避免由于HTTPDNS缓存过期导致降级至DNS的问题,同时在HTTPDNS服务故障时提供降级至
缓存 优势:最大程度的避免使用DNS解析,减小劫持的风险 劣势:HTTPDNS服务异常时,无法降级至DNS,无法感知域名切换 Tolerant 说明:一定程度的容忍过期缓存的策略,使用过期缓存,直至获取下一次HTTPDNS服务端的请求结果 若请求成功,则更新缓存 若请求失败,则删除缓存,提供降级机制 优势:常态下避免由于HTTPDNS缓存过期导致降级至DNS的问题,同时在HTTPDNS服务故障时提供降级至
dns解析失败 int getResolveType(); 说明:域名解析结果的来源,可能取值为: 解析来源类型取值 说明 RESOLVE_NONE 没有有效的解析结果 RESOLVE_FROM_HTTPDNS_CACHE 解析结果来自httpdns cache RESOLVE_FROM_HTTPDNS_EXPIRED_CACHE 解析结果来自过期的httpdns cache RESOLVE_FROM_DNS_CACHE
dns解析失败 int getResolveType(); 说明:域名解析结果的来源,可能取值为: 解析来源类型取值 说明 RESOLVE_NONE 没有有效的解析结果 RESOLVE_FROM_HTTPDNS_CACHE 解析结果来自httpdns cache RESOLVE_FROM_HTTPDNS_EXPIRED_CACHE 解析结果来自过期的httpdns cache RESOLVE_FROM_DNS_CACHE
BDHttpDnsResolveFromHttpDnsExpiredCache 解析结果来自过期的httpdns cache BDHttpDnsResolveFromDnsCache 解析结果来自dns cache BDHttpDnsResolveFromDns 解析结果来自dns解析 @property (nullable, readonly, copy) NSArray *ipv4List;
使用建议 4.1 HTTPDNS解析结果的使用方式 使用HTTPDNS解析结果的ip,对待请求URL中的域名进行替换 设置http请求header中的host字段,在该字段中指定待请求域名 当HTTPDNS获取解析结果失败时,使用原有URL发起请求,此种情况下的请求默认会使用DNS解析 具体实现可参考BDHttpDnsSDKDemo的Android工程 4.2 HTTPS证书校验 当客户端使用HTTPDNS
使用建议 4.1 HTTPDNS解析结果的使用方式 使用HTTPDNS解析结果的ip,对待请求URL中的域名进行替换 设置HTTP请求header中的host字段,在该字段中指定待请求域名 当HTTPDNS获取解析结果失败时,使用原有URL发起请求,此种情况下的请求默认会使用DNS解析 具体实现可参考BDHttpDnsSDKDemo-ios工程 4.2 HTTPS证书校验 当客户端使用HTTPDNS
5-demo说明 Demo是一个简单的Android app工程,集成BDHttpDns.jar。 主要的示例代码位于源文件MainActivity.java中 Demo的示例代码包括: HTTPDNS的初始化配置 使用HTTPDNS解析结果发起https请求的流程 ip替换 Header中设置host 处理https证书校验回调 HTTPDNS解析失败时的降级
5.demo说明 Demo是一个简单的Android app工程,集成BDHttpDns.jar。 主要的示例代码位于源文件MainActivity.java中 Demo的示例代码包括: HTTPDNS的初始化配置 使用HTTPDNS解析结果发起https请求的流程 ip替换 Header中设置host 处理https证书校验回调 HTTPDNS解析失败时的降级
2.功能列表 基于HTTPDNS或DNS的域名解析 在HTTPDNS服务无法访问时,可自动降级到基于DNS的域名解析 支持返回多VIP解析结果 支持对域名解析结果的缓存 可以对缓存的处理策略进行配置 支持网络切换场景的感知及处理 可自动感知网络切换事件,清理并刷新域名解析缓存 清理、刷新缓存策略可配置 适配IPv6网络环境 SDK内部感知当前接入的网络环境状态,在返回域名解析结果时,只给出符合当前网络环境状态的