Секс продолждается. Попарившись, выяснил:
Иногда получается 2-3 запроса сделать, иногда 1-2.
Вот код:
QUOTE |
string loginData = "username=UserLogin&password=UserPass";
Uri uri = new Uri("http://testpage.de"); CookieContainer cookieContainer = new CookieContainer(); HttpWebRequest sessionRequest = (HttpWebRequest)WebRequest.Create(uri); sessionRequest.CookieContainer = new CookieContainer(); cookieContainer = sessionRequest.CookieContainer; HttpWebResponse sessionResponse = (HttpWebResponse)sessionRequest.GetResponse(); sessionResponse.Close();
// Login HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://testpage.de/login.php"); req.CookieContainer = cookieContainer; req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] loginDataBytes = encoding.GetBytes(loginData); req.ContentLength = loginDataBytes.Length; Stream stream = req.GetRequestStream(); stream.Write(loginDataBytes, 0, loginDataBytes.Length); stream.Close(); HttpWebResponse res = (HttpWebResponse)req.GetResponse();
// 2nd scratch Encoding encodingRu = System.Text.Encoding.GetEncoding("windows-1251"); req = (HttpWebRequest)HttpWebRequest.Create(textBoxLink.Text); req.CookieContainer = cookieContainer; req.Method = "GET"; req.ContentType = "text/html";
res = (HttpWebResponse)req.GetResponse(); StreamReader sr = new StreamReader(res.GetResponseStream(), encodingRu);
inputText.Text = sr.ReadToEnd(); MessageBox.Show(res.StatusCode.ToString()); res.Close(); sr.Close(); |
textBoxLink.Text - с формы забирается стринг с линком.
Вся функция весит под кнопкой
Timeout выбивает всегда на красной строке