- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个通过 Mono 2.10 在 Ubuntu 上运行的 .NET 程序
该程序每分钟左右通过 HttpWebRequest 下载一个网页,大多数情况下工作正常:
String result;
WebResponse objResponse;
WebRequest objRequest = System.Net.HttpWebRequest.Create(url);
using (objResponse = objRequest.GetResponse())
{
using (StreamReader sr =
new StreamReader(objResponse.GetResponseStream()))
{
result = sr.ReadToEnd();
// Close and clean up the StreamReader
sr.Close();
}
}
问题是几天后我开始抛出异常:
DateTime: 01/25/2012 08:15:41
Type: System.Net.WebException
Error: Error: NameResolutionFailure
Stack:
at System.Net.HttpWebRequest.EndGetResponse (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0
at System.Net.HttpWebRequest.GetResponse () [0x00000] in <filename unknown>:0
at socks_server.Program.readHtmlPage (System.String url) [0x00000] in <filename unknown>:0
at socks_server.Program.getAccessKeysProc () [0x00000] in <filename unknown>:0
服务器仍然可以解析 DNS,例如
wget http://www.google.com
将返回没有任何问题的文件,ping 和其他解析 DNS 的命令也是如此。
然而,我的程序将继续抛出该异常,直到我重新启动它。重新启动应用程序后,它将再次开始正常工作。
我检查了系统上打开的文件数(400 左右)、内存使用情况(327mb of 4gb)、CPU 使用情况(2-3%),一切正常。
有什么想法吗?
最佳答案
您可以通过将主机名转换为 ip 并将主机名添加到 Headers
集合或 Host
属性来解决它。
如果您的网址是 http://example.com/uri
。楼主自己解决。假设它的 1.2.3.4
。它将是 http://1.2.3.4/uri
。现在将 Host: example.com
header 添加到您的请求中。我认为这可以通过设置 HttpWebRequest.Host
属性来完成。
关于c# - .NET 中的 HttpWebRequest NameResolutionFailure 异常(在 Ubuntu 上使用 Mono),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8999616/
这是一个相当奇怪的问题,但仍然是一个非常糟糕的问题。当用户在完全没有互联网的情况下进入我们的应用程序时,我们会返回 NameResolutionFailure 作为尝试通过 HttpClient 进行
我正在使用 Xamarin 编写 Android 应用程序。我的登录屏幕有两个 EditText 字段。 我需要通过 HTTP POST 请求为登录请求编写代码。 我有这个代码: Button si
我正在使用 C# 发出 HTTPS POST 请求(与 HTTP 相同的问题) byte[] byteArray = Encoding.UTF8.GetBytes("var1=blah&var2=ha
由于 WebExceptionStatus 枚举中缺少成员(即 NameResolutionFailure),我无法在 Xamarin.Forms 中正确处理异常。 > 成员(member)。 有谁知
我有一个通过 Mono 2.10 在 Ubuntu 上运行的 .NET 程序 该程序每分钟左右通过 HttpWebRequest 下载一个网页,大多数情况下工作正常: String r
我的 Xamarin 应用在与后端 Web 服务通信时使用外部 IP 地址。使用 Xamarin.iOS 9.6.2.4,调用成功。升级到 Xamarin.iOS 9.8.0.323 后,我现在遇到异
我正在开发 Mono Android 移动应用程序。我在我的应用程序中调用我的 WCF 服务,我使用项目菜单的 -> 添加 WebRefernce 选项添加了 wcf 服务。我的问题是当我在设备上运行
我是一名优秀的程序员,十分优秀!