Можно ли автоматически обрабатывать файлы cookie в .NET с объектами HttpWebRequest/HttpWebResponse? Я предпочитаю искать эквивалент LWP:: UserAgent и его поведение (perl), только в среде .NET.
Любые предложения или советы?
Ответ 1
Я думаю, что вы ищете класс CookieContainer. Если я понимаю, что вы пытаетесь сделать правильно, у вас есть отдельные объекты для запроса и ответа, и вы хотите автоматически передать коллекцию файлов ответов в следующую коллекцию cookie запроса. Попробуйте использовать этот код:
CookieContainer cookieJar = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://www.google.com");
request.CookieContainer = cookieJar;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
int cookieCount = cookieJar.Count;
Как только вы создадите cookieJar и установите его в файл cookie Cookie, он будет хранить все файлы cookie, которые поступают из ответа, поэтому в приведенном выше примере количество кувшинов cookie будет 1 после его посещения Google.com, Свойства контейнера cookie запроса и ответа выше будут содержать указатель на файл cookieJar, поэтому файлы cookie автоматически обрабатываются и совместно используются между объектами.