libcurl.NET не может разрешить внутренний хост при работе в отладчике Visual Studio 2012
В следующей программе на C# CURL не может разрешить локальный сервер внутри компании. Оно работает:
- для внешних URL-адресов (например, http://www.google.com/)
- при использовании WebRequest вместо CURL (первая часть в коде)
Это программа:
using SeasideResearch.LibCurlNet;
using System.Net;
using System.IO;
// ... class and method declaration
// first part - runs just fine, always
WebRequest r = WebRequest.Create("http://mycompanyserver");
using (Stream s = r.GetResponse().GetResponseStream())
{
StreamReader sr = new StreamReader(s, Encoding.UTF8);
string str;
while ((str = sr.ReadLine()) != null)
{
Console.Out.WriteLine(str);
}
}
// second part - returns CURLE_COULDNT_RESOLVE_HOST for simple URLs like http://hostname, but works for http://hostname.mycompany.com
Curl.GlobalInit((int)CURLinitFlag.CURL_GLOBAL_ALL);
Easy easy = new Easy();
easy.SetOpt(CURLoption.CURLOPT_URL, "http://mycompanyserver");
CURLcode result = easy.Perform();
easy.Cleanup();
Curl.GlobalCleanup();
Я занимаюсь этим уже два дня, тестирую, гуглюсь, проваливаюсь. Это так странно, что происходит сбой только для внутренних URL-адресов компании. Когда я использую curl из командной строки, он отлично работает ("curl -v http://mycompanyserver/")