【发布时间】:2014-07-29 11:23:03
【问题描述】:
我正在测试一个遇到问题的端点。
我只是在一个每小时执行一个请求的循环中使用HttpClient。
var httpClient = new HttpClient();
var message = httpClient.GetAsync(url).Result;
Console.WriteLine(message.StatusCode);
偶尔我会遇到这个异常:
System.Net.Http.HttpRequestException:发送时出错 请求。 ---> System.Net.WebException:远程名称不能 被解决:'xxx'
经验是,异常之后,URL就可以访问了。在浏览器中,您只需刷新页面即可。
我仍然没有收到用户的任何报告,所以我想知道这是否只是一个本地问题,但可以使用一些信息来帮助诊断。
有没有办法检查无法解析远程名称是由 DNS 问题还是由异常中的 Web 服务器问题引起的?我可以从HttpCLient 获得更多信息还是需要更高级的诊断工具?
【问题讨论】:
-
如果你愿意,你可以在这里分享实际的 URL,我们可以看看它是否对每个人都失败了,但这似乎是某些服务的本地失败。
-
您是否厌倦了在连接属性中切换您的 DNS 服务器? (例如 8.8.8.8 上的 Google DNS)
-
不。什么都没试过。感觉就像是当站点空闲了一段时间,然后第一个请求将其唤醒。看起来很奇怪
-
[Fiddler] DNS 查找“url”失败。 System.Net.Sockets.SocketException 这通常是主机名解析期间的临时错误,意味着本地服务器没有收到来自权威服务器的响应
-
尝试
ipconfig /flushdns并临时更改 DNS 服务器
标签: c# .net system.net.webexception