Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2015, 13:29   #1
F1oyd
Пользователь
 
Регистрация: 23.12.2013
Сообщений: 14
По умолчанию Проблема с авторизацией

Добрый день, уважаемые программисты..

подскажите плз как авторизоваться на сайте www.moodys.com

Пытаюсь давно проверенным способом:
Код:
        CookieCollection authMoodys(string username, string password)
        {
            Uri url = new Uri(@"https://www.moodys.com/identity/login");
            List<string> postString = new List<string>();
            postString.Add("UserName=" + username);
            postString.Add("Password=" + password);
            byte[] postBytes = Encoding.UTF8.GetBytes(string.Join("&", postString));
            postString = null;

            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
            request.Proxy.Credentials = CredentialCache.DefaultCredentials;
            request.Method = WebRequestMethods.Http.Post;
            request.AllowAutoRedirect = false;
            request.ServicePoint.Expect100Continue = false;
            request.ContentType = @"application/x-www-form-urlencoded; charset=UTF-8";
            request.UserAgent = @"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36";
            request.CookieContainer = new CookieContainer();

            using (Stream postStream = request.GetRequestStream())
                postStream.Write(postBytes, 0, postBytes.Length);

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                return response.Cookies;
        }
но при переходе с куками на нужную страницу, возвращает неавторизованую страницу...
F1oyd вне форума Ответить с цитированием
Старый 26.01.2015, 13:38   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну берите, например, Fiddler и сравнивайте запрос браузера со своим.

Например, может сервер реферер хочет.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.01.2015, 13:42   #3
F1oyd
Пользователь
 
Регистрация: 23.12.2013
Сообщений: 14
По умолчанию

Да я смотрел, там ASP.net генерирует какие то рандомные ключи которые я не смог повторить, реально ли авторизоваться на сайте с ASP.net??
F1oyd вне форума Ответить с цитированием
Старый 26.01.2015, 13:51   #4
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Цитата:
генерирует какие то рандомные ключи
Сильно сомневаюсь. Ищи ключи в логах снифера.
WinCoder вне форума Ответить с цитированием
Старый 26.01.2015, 14:16   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

О каких ключах речь? В параметрах POST запроса? типа
Код:
username=john&password=123&csrf_token=37cbb7bcad1941b446a7e5329c0ed329
Скорее всего значение указано в отдаваемом HTML страницы (в форме). Бывает еще Javascript'ом что-нибудь генерируется, но редко.

Так что смотрите HTML и доставайте оттуда. Например, парсером типа HtmlAgilityPack (XPath запросами).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 26.01.2015 в 14:18.
Alex11223 вне форума Ответить с цитированием
Старый 26.01.2015, 14:27   #6
F1oyd
Пользователь
 
Регистрация: 23.12.2013
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
О каких ключах речь?
в куках

Сниффер получает, такие куки:
Код:
MDC.ASPXAUTH	
Mdc.FedAuth
UserSessionId
а моя функция получает :
Код:
MDC.ASPXSESSION
UserSessionId
не могу понять как мне получить MDC.ASPXAUTH и Mdc.FedAuth
F1oyd вне форума Ответить с цитированием
Старый 26.01.2015, 14:35   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну, если не разберетесь как получать, то как вариант можно забить на HTTP запросы и взять браузер типа стандартного WebBrowser или Awesomium, Cef, и автоматизировать уже с его помощью (в основном с помощью выполнения JS для заполнения полей и нажатия кнопок).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.01.2015, 14:35   #8
F1oyd
Пользователь
 
Регистрация: 23.12.2013
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Ну берите, например, Fiddler и сравнивайте запрос браузера со своим.

Например, может сервер реферер хочет.
Alex11223, ты гений спасибо, реально реферер хотел...
F1oyd вне форума Ответить с цитированием
Старый 26.01.2015, 14:37   #9
F1oyd
Пользователь
 
Регистрация: 23.12.2013
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Ну, если не разберетесь как получать, то как вариант можно забить на HTTP запросы и взять браузер типа стандартного WebBrowser или Awesomium, Cef, и автоматизировать уже с его помощью.
стандартный WebBrowser не интересно..
А можете пояснить зачем ему реферер? для понимания!
F1oyd вне форума Ответить с цитированием
Старый 26.01.2015, 14:40   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Да кто ж его знает зачем. Может просто небольшая защита от простых ботов. Ибо если пришла форма без реферера, то ее явно не человек со страницы сайта отправил.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с авторизацией.. egorzenit Общие вопросы Delphi 2 13.04.2012 18:37
Проблема с авторизацией SmoK777 Работа с сетью в Delphi 4 22.03.2012 20:17
Проблема с авторизацией Yazon2006 Работа с сетью в Delphi 2 02.07.2011 22:03
Проблема с авторизацией DKENT Работа с сетью в Delphi 0 14.10.2010 17:40
проблема с авторизацией sergei2009 PHP 1 19.04.2010 17:47