今天在做项目,使用OkHttp进行网络请求,本来是很简单的一件事,足足浪费了我一下午的时间.....
事情是这样的,一个普通的网络请求,没有404,没有500,甚至请求都没有发出去,请求卡在了解析DNS上,通过日志看到错误
HTTP FAILED: java.net.UnknownHostException: Unable to resolve host "xx.xx.xx": No address associated with hostname
这是什么鬼?说实话我是第一次看到这个错误,之前从来没有卡在地址上。
日志是这个地方打印的,我受限考虑的是地址有问题,然后我去ping了这个域名,发现可以ping通,说明不是地址的问题,然后我去找后台开发人员,看看是不是在接口地址加了限制,然而,得到的答复是没有,这就很着急了,毕竟一下午已经快要过去了,我连这一个接口都没调通。
后来我突然灵光一闪,是我的电脑有问题,因为ios可以请求正常,电脑正常使用能有什么问题?
排查吧,切换网络,公司是有好几个路由器,发现有的wifi居然不能正常上午,而别人的电脑是能过正常上网的,说明wifi没有问题,什么东西可以做到这个那,我瞄向了屏幕右下角的电脑管家(没有黑的意思),电脑管家可以拦截网址,会不会是它的问题。
我的管家里有一个小插件
没错,问题就在这里,恢复一下默认DNS就好了。
如果还是不行可以尝试切换dns,应该都可以解决。