本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文档中的解析接口都已标记为过时,在未来版本中这些接口将会被移除,请参考最新的域名解析接口文档使用域名解析能力。
IPv4异步解析接口
使用异步解析接口,首先查询缓存,若存在则返回结果,若不存在返回null并且进行异步域名解析更新缓存。
解析结果返回的IP是服务端返回的IP数组中的第一个IP,不一定是最优IP。
如果您需要返回的IP是最优IP,您可以使用
启用IP优选
接口,使返回的IP为最优IP。
接口定义
- (NSString *)getIpByHostAsync:(NSString *)host;
2.1.0版本对接口名称进行了优化,如果接入的SDK是2.1.0版本或2.1.0以后的版本,建议使用下面的新API,上面这个旧API可能会在后续版本中删除
- (NSString *)getIPv4ForHostAsync:(NSString *)host;
参数说明
参数 | 类型 | 是否必填 | 说明 |
host | NSString | 是 | 域名(如www.aliyun.com) |
IPv4异步解析获取解析结果列表
异步解析接口,获取IP列表,首先查询缓存,若存在则返回结果列表,若不存在返回null并且进行异步域名解析更新缓存。
接口定义
- (NSArray *)getIpsByHostAsync:(NSString *)host;
2.1.0版本对接口名称进行了优化,如果接入的SDK是2.1.0版本或2.1.0以后的版本,建议使用下面的新API,上面这个旧API可能会在后续版本中删除
- (NSArray *)getIPv4ListForHostAsync:(NSString *)host;
参数说明
参数 | 类型 | 是否必填 | 说明 |
host | NSString | 是 | 域名(如www.aliyun.com) |
启用IP优选
设置IP探测列表,设置该接口后,如果解析了相应的域名,则SDK会对返回的IP进行IP探测,对返回的列表进行动态排序,以保证第一个IP是可用性最好的IP。
SDK V1.6.12及以上版本支持。
接口定义
- (void)setIPRankingDatasource:(NSDictionary<NSString *, NSNumber *> *)IPRankingDatasource;
参数说明
参数 | 类型 | 是否必填 | 说明 |
IPRankingDatasource | NSDictionary<NSString *, NSNumber *> | 是 | 设置对应域名的端口号 @{host: port} |
代码示例
HttpDnsService *httpdns = [[HttpDnsService alloc] initWithAccountID:XXXX];
NSDictionary *IPRankingDatasource = @{
@"www.abc.com" : @80,
@"www.cba.com" : @443,
@"www.bac.com" : @443
};
[httpdns setIPRankingDatasource:IPRankingDatasource];
IPv4异步解析获取URL使用场景下的格式化结果
异步解析接口,首先查询缓存,若存在则返回结果,若不存在返回空对象并且进行异步解析更新缓存。返回的结果是URL使用场景下的格式化结果。
接口定义
- (NSString *)getIpByHostAsyncInURLFormat:(NSString *)host;
参数说明
参数 | 类型 | 是否必填 | 说明 |
host | NSString | 是 | 域名 |