Модераторы: Snowy, Poseidon, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Скачать файл, через https 
:(
    Опции темы
Poseidon
Дата 8.9.2005, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

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



Вот ***!!! smile Обьясните тупому Посейдону в чем разница между IdHTTP.BoundPort и IdHTTP.Port
Изменил в своем коде и все пашет на ура. Матов не хватает smile

Snowy, отдельное спасибо за поддержку smile


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Snowy
Дата 8.9.2005, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Цитата(Poseidon @ 8.9.2005, 17:15)
бьясните тупому Посейдону в чем разница между IdHTTP.BoundPort и IdHTTP.Port

Ух. Я и не заметил, что ты BoundPort поставил, вместо порт smile
BoundPort не трогай - он выбирается динамически, если не укажешь иного.
Это порт на твоей машине, а не на удаленной.
Поэтому сокет и глючил.
Добавлено @ 17:23
BoundPort обычно выбирается автоматом из свободных из диапазона BoudMin и BoundMax.
Я не знаю, по каким причинам он не освобождался в данном примере, но факт в том, что порт указан фиксировано и автомат поиска свободного был отключен.
PM MAIL   Вверх
Snowy
Дата 8.9.2005, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Итак получаем на выходе готовое решение.

Получить файл по HTTPS:
Код

uses IdHTTP, IdSSLOpenSSL;

function GetSSLHttp(url, user, password, FileName: string;  PortNum: integer=443):boolean;
var
  http: TIdHTTP;
  ssl:  TIdSSLIOHandlerSocket;
  ms:   TMemoryStream;
begin
  http := TIdHTTP.Create(nil);
  ssl := TIdSSLIOHandlerSocket.Create(http);
  ms := TMemoryStream.Create;
  http.Port := PortNum;
  http.IOHandler := ssl;
  http.Request.Username := user;
  http.Request.Password:=password;
  http.Request.BasicAuthentication := true;
  try
    http.Get(url, ms);
    result:=true;
  ms.SaveToFile(FileName);
  except
    result :=false;
  end;
  ms.Free;
  http.Free;
end;

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

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

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




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


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

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