Я пытаюсь войти на сайт, используя C # и класс WebRequest.Это код, который я написал вчера вечером для отправки POST-данных на веб-страницу:
public string login(string URL, string postData)
{
Stream webpageStream;
WebResponse webpageResponse;
StreamReader webpageReader;
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
_webRequest = WebRequest.Create(URL);
_webRequest.Method = "POST";
_webRequest.ContentType = "application/x-www-form-urlencoded";
_webRequest.ContentLength = byteArray.Length;
webpageStream = _webRequest.GetRequestStream();
webpageStream.Write(byteArray, 0, byteArray.Length);
webpageResponse = _webRequest.GetResponse();
webpageStream = webpageResponse.GetResponseStream();
webpageReader = new StreamReader(webpageStream);
string responseFromServer = webpageReader.ReadToEnd();
webpageReader.Close();
webpageStream.Close();
webpageResponse.Close();
return responseFromServer;
}
, и он отлично работает, но я понятия не имею, как я могу изменить его для отправки POST-данных в сценарий входа в систему.а затем сохраните файл cookie (?) и войдите в систему.
Я просмотрел свои сетевые переводы с помощью Firebug на странице входа в веб-сайты, и он отправляет данные POST на URL-адрес, который выглядит следующим образом:
accountName=myemail%40gmail.com&password=mypassword&persistLogin=on&app=com-sc2
Насколько я знаю, чтобы иметь возможность использовать мою учетную запись на этом веб-сайте в моем приложении C #, мне нужно сохранить cookie-файл, отправляемый веб-сервером, и затем использовать его при каждом запросе?Это правильно?Или я могу вообще без куки?
Любая помощь очень ценится, спасибо!:)