#c# #asp.net
#c# #asp.net
Вопрос:
Я пытаюсь получить Cookie из HTTP get запроса с помощью объекта HttpWebReqquest в c #, но я его не нахожу. если я выполню следующий http-запрос, получите запрос в браузере:
вы можете ясно видеть, что существует 3 набора файлов cookie:
введите описание изображения здесь
но когда я выполняю его с помощью HttpWebRequest:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.AutomaticDecompression = DecompressionMethods.GZip;
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
using (Stream stream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
res = reader.ReadToEnd();
}
Я вижу в заголовках только 2 файла cookie, а третий отсутствует:
введите описание изображения здесь
итак, как я могу получить этот файл cookie?
Спасибо.
Комментарии:
1. Посмотрите на заголовки запросов браузеров, там будут некоторые (user-agent / accept / любые другие существующие файлы cookie), которые не отправляются с запросом HttpWebRequest, если вы явно не добавите их.
2. но почему я должен отправлять его в моем HttpWebRequest? я не отправлял их при выполнении URL-адреса в браузере…
3. Получение файлов cookie из ответа и добавление их в следующий запрос — это то, что делает браузер. Если вы используете an
HttpWebRequest
(или соответствующий способ на любом языке программирования), вам необходимо самостоятельно обработать все данные, отправляемые на сервер.