Вход на сайт через C#
Вы можете немного упростить c# задачу, создав класс, производный c-sharp от WebClient, переопределив c-sharp его метод GetWebRequest и web-client установив для него объект visual-c# CookieContainer. Если вы csharp всегда устанавливаете один webclient и тот же экземпляр CookieContainer, управление web-client файлами cookie будет выполняться .cs-file автоматически.
Но единственный c#-language способ получить HttpWebRequest c#-language до его отправки - это унаследовать webclient от WebClient и переопределить webclient-download этот метод.
public class CookieAwareWebClient : WebClient
{
private CookieContainer cookie = new CookieContainer();
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest request = base.GetWebRequest(address);
if (request is HttpWebRequest)
{
(request as HttpWebRequest).CookieContainer = cookie;
}
return request;
}
}
var client = new CookieAwareWebClient();
client.BaseAddress = @"https://www.site.com/any/base/url/";
var loginData = new NameValueCollection();
loginData.Add("login", "YourLogin");
loginData.Add("password", "YourPassword");
client.UploadValues("login.php", "POST", loginData);
//Now you are logged in and can request pages
string htmlSource = client.DownloadString("index.php");
c#
httpwebrequest
webclient
Вход на сайт через C#
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.