您的位置:首页 > 理论基础 > 计算机网络

java代码中发送http请求的DnsResolver使用问题

2016-05-20 19:55 1056 查看
http请求中使用DnsResolver的方式有两种,一种是使用默认的DnsResolver,一种是自定义一种DnsResolver

1. 使用默认的DnsResolver

DnsResolver dnsResolver = new SystemDefaultDnsResolver();
这种方式,当代码运行时,会用代码所在的机器上的host文件一些一些其他的方式去解析目的机器(域名)


2. 自定义DnsResolver

代码如下

private static DnsResolver getDnsResolver() {
InMemoryDnsResolver dnsResolver = new InMemoryDnsResolver();

try {
dnsResolver.add("dev4.baike.xx.com", Inet4Address.getByName("1.1.1.1"));
dnsResolver.add("baike.baidu.com", Inet4Address.getByName("2.2.2.2"));
} catch (Exception e) {
e.printStackTrace();
}

return dnsResolver;
}


这样,代码运行时就会根据自定义的这个DnsResolver来解析,比如http请求中目的机器是baike.baidu.com,那么目的机器就会被解析成2.2.2.2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: