0 / 0 / 0
Регистрация: 23.01.2011
Сообщений: 18
1

HttpWebRequest авторизация, проблема с cookie

12.02.2012, 13:45. Показов 14122. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Пытаюсь с помощью компонента HttpWebRequest авторизоваться на одном сайте.

Проходит это в несколько этапов:
1) На первом этапе формирую http заголовки и методом GET получаю содержимое кукисов
2) На втором этапе опять формирую http заголовки, формирую строку запросы с login и password, отправляю полученные кукисы по второму адресу и судя по Fiddler должен приходить ответ 302 Moved Temporarily, но у меня приходит 200 OK (страница с ошибкой), при этом request.AllowAutoRedirect = false поставил.

Посмотрел отправляемые заголовки, все совпадает с хромом, кроме кукисов.

При авторизации из-под хрома кукисы такого вида
Cookie: SID=da1696cf17d4717fd0c31fe41e44739e; __bnt=125015; PSID=r35in1383p2mc3r7aqhaig5al7; __utma=187450236.323129235.1328425617.1328999292.1329039607.14; __utmb=187450236.1.10.1329039607; __utmc=187450236; __utmz=187450236.1328430834.2.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|ut mctr=megasite.ru
При авторизации из-под моего клиента:
Cookie: PSID=g96hhd4v9a5uc5rfeo4goohao2; path=/,SID=5231556e295e21c75c6987d65ca2f6fe; expires=Sun, 04-Sep-2016 09:41:43 GMT; path=/,__bnt=90384; expires=Sun, 04-Sep-2016 09:41:43 GMT; path=/
Скорее всего не приходит редирект как раз из-за отсутствия в куках вот этих директив utma, utmc и т.д.
Подскажите пожалуйста, откуда они берутся и как их передать.
Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2012, 13:45
Ответы с готовыми решениями:

Как прикрепить Cookie к запросу HttpWebRequest?
Есть запрос, который успешно проходит авторизацию. Сдираю с его HttpWebResponse'а CookieContainer,...

HTTPS Авторизация HttpWebRequest
Здравствуйте, перейду сразу к делу. Пытаюсь освоить httpwebrequest, Хочу парсить кое какие...

Как поместить cookie полученные через httpwebrequest в webbrowser
Всем привет! Итак, у меня есть очень важный вопрос, от решения которого очень многое зависит....

Авторизация Vk с HttpWebRequest
Помогите, пожалуйста, новичку. Стоит задача сделать автоавторизацию на сайте vkontakte.ru с помощью...

9
53 / 56 / 10
Регистрация: 07.02.2011
Сообщений: 556
Записей в блоге: 1
12.02.2012, 13:57 2
Каким образом вы cookies получаете?
0
0 / 0 / 0
Регистрация: 23.01.2011
Сообщений: 18
12.02.2012, 14:16  [ТС] 3
WizarД,
C#
1
string cookies = String.IsNullOrEmpty(response.Headers["Set-Cookie"]) ? "" : response.Headers["Set-Cookie"];
0
53 / 56 / 10
Регистрация: 07.02.2011
Сообщений: 556
Записей в блоге: 1
12.02.2012, 14:31 4
C#
1
2
3
4
5
6
7
//Запрос
CookieContainer cont = new CookieContainer();
request.CookieContainer = cont;
......
CookieCollection cc = new CookieCollection();
cc = response.Cookies;
cont.Add(cc);
У дальнейшего запроса выставляем куукие контейнер cont
1
0 / 0 / 0
Регистрация: 23.01.2011
Сообщений: 18
12.02.2012, 15:46  [ТС] 5
WizarД, огромное спасибо!
0
1 / 1 / 0
Регистрация: 04.02.2010
Сообщений: 48
08.07.2012, 23:56 6
WizarД, а если со стороны сервера приходят не все куки?
Точнее в заголовках "Set-Cookies" есть все, а через свойство доступна только часть кук - как тогда получить ВСЕ кукисы?
0
53 / 56 / 10
Регистрация: 07.02.2011
Сообщений: 556
Записей в блоге: 1
09.07.2012, 23:35 7
I.B., Используйте Regex.
0
1 / 1 / 0
Регистрация: 04.02.2010
Сообщений: 48
10.07.2012, 00:20 8
WizarД, а поизящнее способа нет? И почему так случается, что в заголовках всё в порядке, а в контейнере только часть кук?
0
63 / 63 / 14
Регистрация: 05.08.2011
Сообщений: 323
Записей в блоге: 5
10.07.2012, 06:42 9
Цитата Сообщение от I.B. Посмотреть сообщение
WizarД, а если со стороны сервера приходят не все куки?
Точнее в заголовках "Set-Cookies" есть все, а через свойство доступна только часть кук - как тогда получить ВСЕ кукисы?
Рекомендую для ознакомления следующие статьи:
1. Аутентификация при использовании WebRequest и WebResponse
2. Взаимодействие с другими сайтами через HTTP (HttpWebRequest и HttpWebResponse)

Они должны быть исчерпывающими для удовлетворения ваших целей. Лично мне очень помогли они ознакомиться с "HttpWeb..." при написании подобной программы.

Вы уж извините за отсутствия прямого ответа кодом, просто лень (честное слово) вспоминать и разбираться.
2
1 / 1 / 0
Регистрация: 04.02.2010
Сообщений: 48
10.07.2012, 08:19 10
Mans7, огромное спасибо! Первая статья - то, что нужно!
0
10.07.2012, 08:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.07.2012, 08:19
Помогаю со студенческими работами здесь

Не проходит авторизация на сайте с использованием httpwebrequest
проблема в том, что не логинется на сайте :( подскажите где ошибка. ps ранеток не слушаю, просто...

Авторизация (cookie)
Здравствуйте пользователи! Набросал скрипт: <!DOCTYPE html> <html> <head><title>Главная...

HttpWebRequest, авторизация на сайте: Нужно ли прописывать Headers, UserAgent в каждом запросе
Всем привет! Пытаюсь пройти авторизацию на сайте http://ru.grepolis.com Для этого нужно...

Авторизация с использованием COOKIE
Всем привет. Делаю лабораторную работу по PHP. Задача: Сделать страницу, на которой разместить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru