Нужно использовать статические методы класса WebRequest:
var request = WebRequest.Create("host");
var stream = request.GetResponse().GetResponseStream();
var content = new StreamReader(stream).ReadToEnd();
Console.WriteLine(content);
Console.ReadLine();
Можно использовать прокси:
WebProxy proxy = new WebProxy("proxy",80);
proxy.BypassProxyOnLocal = true;
request.Proxy = proxy;
Если сервер возвращает в качестве кодов состояния 301 или 302 (или любой другой код перенаправления 30x), то автоматически будет произведен запрос на адрес перенаправления. Если такое поведение не является желательным, нужно установить в false
свойство AllowAutoRedirect
объекта HttpWebRequest
. При этом придется сделать явное преобразование объекта, возвращаемого методом WebRequest.Create
, к классу HttpWebRequest
:
var request = (HttpWebRequest) WebRequest.Create("host");
request.AllowAutoRedirect = false;