Накидал код для аутентификации по адресу https://landwatersun.ru/login.php по логину/паролю - user/user.
string loginUri = "https://landwatersun.ru/login.php";
string Uri = "https://landwatersun.ru";
string username = "user"; // (Your username)
string password = "user"; // (Your password)string reqString = "req_username=" + username + "&req_password=" + password;
byte[] requestData = Encoding.UTF8.GetBytes(reqString);CookieContainer cc = new CookieContainer();
var request = (HttpWebRequest)WebRequest.Create(loginUri);
request.Proxy = null;
request.CookieContainer = cc;
request.Method = "POST";request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = requestData.Length;using (Stream st = request.GetRequestStream())
st.Write(requestData, 0, requestData.Length);using (var response = (HttpWebResponse)request.GetResponse())
foreach (Cookie c in response.Cookies)
Console.WriteLine(c.Name + " = " + c.Value);var req = (HttpWebRequest)WebRequest.Create(Uri);
req.Proxy = null;
req.CookieContainer = cc;
using (WebResponse res = req.GetResponse())
using (Stream rs = res.GetResponseStream())
using (FileStream fs = File.Create(@"c:\Users\landw\Downloads\code.html"))
rs.CopyTo(fs);
До тех пор, пока мы будем указывать сс последующим объектам WebRequest, мы будем считаться аутентифицированным пользователем.
Судя по контексту ответа (см. code.html) похоже аутентификации не проходит. В чем может быть дело?