Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сертификат и отправка данных, HttpWebRequest и сертификат 
:(
    Опции темы
fen0men
Дата 29.7.2008, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 15.2.2008

Репутация: нет
Всего: нет



Привет! Нужна помощь. Необходимо получить html-код странички, когда соединение защищено(https, SSL, сертификация). Есть страничка для авторизации(ввод логина и пароля), защищенная. Нужно POST'ом отправить логин, пароль, еще кое-какие данные на следующую страничку и получить ее html-код(следующей странички). Повторяю, соединение https. При следующем коде, возвращается html-код такой, как будто логин\пароль неправильные.
Код

            string login="";
            string pass="";
            X509Certificate2 cert = findCertificate(StoreLocation.CurrentUser, StoreName.My, X509FindType.FindBySubjectName, "vpn-standard.harris.com");
            NetworkCredential myCred = new NetworkCredential(login, pass, "vpn-standard.harris.com");
            CredentialCache myCache = new CredentialCache();
            myCache.Add(new Uri("http://www.vpn-standard.harris.com/"), "Basic", myCred);    
            HttpWebResponse result = null;
            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(lcUrl5);
            req.Method = "POST";
            req.ContentType = "application/x-www-form-urlencoded";
            req.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14";
            req.CookieContainer = cookie_container;
            req.Referer = lcUrl1;
            req.Accept = "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
            req.ClientCertificates.Clear();
            req.ClientCertificates.Add(cert);
            req.Credentials = myCache;          
            byte[] SomeBytes = null;
            string FormParams = @"tz_offset=180&
                                  realm=Standard&
                                  btnSubmit=Sign+In";
            SomeBytes = Encoding.GetEncoding("utf-8").GetBytes(FormParams);
            req.ContentLength = SomeBytes.Length;
            Stream newStream = req.GetRequestStream();
            newStream.Write(SomeBytes, 0, SomeBytes.Length);
            newStream.Close();
            result = (HttpWebResponse)req.GetResponse();

            //Get Response
            Stream ReceiveStream = result.GetResponseStream();
            StreamReader sr = new StreamReader(ReceiveStream, encode);
            string html = sr.ReadToEnd();
            result.Close();


Это сообщение отредактировал(а) fen0men - 29.7.2008, 18:16
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0791 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.