Доброго времени суток! Есть у меня такой вопрос(еще один). Как исходя из кода, подкорректированного Чак Норрис, за что ему отдельно спасибо, перейти тут же на другую страницу этого же сайта, на котором уже авторизирован(допустим страница - "сообщения" "http://my.deviantart.com/messages/") и отобразить её html код.
Код:
var msg = new StringBuilder(String.Empty);
var st = new Uri("http://www.deviantart.com");
var reqString = String.Format(
"reusetoken=1&username={0}&password={1}",
username, password);
var requestData = Encoding.UTF8.GetBytes(reqString);
var cc = new CookieContainer();
var request = (HttpWebRequest)
WebRequest.Create(
"https://www.deviantart.com/users/login"); 1
request.Credentials = CredentialCache.DefaultCredentials;
request.AllowAutoRedirect = false;
request.KeepAlive = true;
request.CookieContainer = cc;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)";
request.ContentLength = requestData.Length;
using (var s = request.GetRequestStream())
{
s.Write(requestData, 0, requestData.Length);
}
var webResponse = request.GetResponse();
using (var stream = new StreamReader(webResponse.GetResponseStream()))
{
var content = stream.ReadToEnd();
Console.WriteLine(content);
foreach (var str in cc.GetCookies(st))
{
msg.Append(str);
}
Console.WriteLine(msg.ToString());
}
HttpWebRequest req = (HttpWebRequest) WebRequest.Create("http://www.deviantart.com/?loggedin=1");
req.CookieContainer = cc; 2
req.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse respons = (HttpWebResponse)req.GetResponse();
Stream dataStream = respons.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
Console.WriteLine(responseFromServer);
reader.Close();
dataStream.Close();
respons.Close();
Console.ReadLine();
Заранее спасибо.
Спасибо еще раз, огромное!