Переписать HTTP запрос на C#
Формулировка задачи:
Нужно переписать HTTP запрос на C#
POST http://URL HTTP/1.1
Host: URL
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10
Accept: text/html, */*
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: URL
Content-Length: 86
Cookie: **********
Pragma: no-cache
Cache-Control: no-cache
signin[login]=******&signin[password]=*********&signin[remember]=on
Решение задачи: «Переписать HTTP запрос на C#»
textual
Листинг программы
class Program { private static bool SendPost(string url, string postData) { var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.AllowAutoRedirect = false; httpWebRequest.Method = "POST"; httpWebRequest.UserAgent = "User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7 (.NET CLR 3.5.30729)"; httpWebRequest.ContentType = "application/x-www-form-urlencoded"; httpWebRequest.ProtocolVersion = HttpVersion.Version10; httpWebRequest.Referer = "http://www.voyna-plemyon.ru/"; var buffer = Encoding.ASCII.GetBytes(postData); httpWebRequest.ContentLength = buffer.Length; using (var writer = httpWebRequest.GetRequestStream()) { writer.Write(buffer, 0, buffer.Length); } using (var httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse()) { var location = httpWebResponse.Headers.Get("Location") ?? ""; return location.IndexOf("server_id=ru1", StringComparison.InvariantCulture) != -1; } } static void Main(string[] args) { var user = ""; var pwd = ""; var b = SendPost("http://www.voyna-plemyon.ru/index.php?action=login", string.Format("user={0}&clear=true&password={1}&server=ru1", user, pwd)); Console.WriteLine(b); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д