Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Indy и Builder 2007


Автор: Dobby 16.8.2008, 08:36
Вообщем пишу я программу которая будет авторизоваться на каком-то определенном сайте с SSL. 
Получить текст этой страницы (с ssl) вроде получилось. Но и здесь есть пару непонятных моментов:
1. Если написать имя хоста в параметре функции Get (например: "https://login.somesite.com/.../") то вылетает ошибка Socket Error # 11004. Кстати довольно таки известная насколько я понял. 
Если же в параметре функции написать IP этого хоста (например: "https://123.123.123.123/.../") то ошибка пропадает. Но отсюда возникает вопрос: многие программы же работают просто: совсем не обязательно вводить ИП, и ввод имени хоста не повлечет за собой никаких ошибок. Может есть какой-то другой способ от нее избавиться?
2. Почему-то после этого запроса GET не сохраняются (да и вообще по-моему не выдаются) кукисы, с разрешенным параметром AllowCookies и заданным мэнеджером в свойствах компонента TIdHttp. Почему такое может происходить?

Ну с Get() вроде все. Теперь Post(). Это вообще лажа какая-та. Здесь даже способ подмены имени хоста на его IP не проходит. По-любому выдается Сокет Ерорр. Привожу пример самого элементарного кода из моей программы:
Код

TStringList * command=new TStringList();
TStringList * response=new TStringList();
command->Add("username=shdksjdfk");
command->Add("password=lkoiuytreqw");
response->Add(IdHttp1->Post("https://123.123.123.123/.../",command));


Не знаю. На мой взгляд все вроде правильно. Может я чего-то не учитываю?
Вообщем... Помогите кто чем может...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)