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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Компонент Indy и медиа файлы 
:(
    Опции темы
rodendron
Дата 5.7.2007, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Добрый день,

У меня есть:
HTTP : TidHTTP;

mystring = HTTP.Get(mylink);

В mystring я получаю текст. Вопрос в том, что если ссылка начинает загружать mp3 или avi фаил - это очень плохо smile Как быть в этом случае? Пробовал считывать заголовки - зараза пишет, что HTML. Но в приниципе так и есть. У меня просто разрешены редиректы. Так вот редирект запускает mp3 фаил...

Что необходимо сделать, чтобы в случае попытки получения медиаконтента, никаких действий не производилось?

Заранее благодарен.
PM MAIL   Вверх
stab
Дата 5.7.2007, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

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



у TIdHTTP есть событие OnHeadersAvailable, происходит оно когда заголовки уже скачались, там проверяй ResponseCode, если 200, значит это уже не редирект, а реальные данные, потом проверяй Content-Type если text/html, то ок, иначе VContinue := false и лучше бы ещё дисконнект сделать, т.к. у меня VContinue выставленное в false почему-то не всегда прекращало выполнение запроса.


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
rodendron
Дата 5.7.2007, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Немного не понял, мне, после редиректа нужны данные.
Мои дествия таковы.

1) Захожу на страничку
2) Хватаю редирект
3) Начинается открытие медиафайла

То есть, редирект мне нужен, но вот от третьего пункта хотелось бы отказаться.

Код

 try
   btext := HTTP.Get(link);
 except
   on e:Exception do
     begin
       HTTP.Disconnect;
       Result := 1;
     end;
 end;

PM MAIL   Вверх
stab
Дата 5.7.2007, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

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



сделай как написано ;) обработчик на событие OnHeadersAvailable повесил уже?

рекомендую к параллельному прочтению спецификацию протокола HTTP и хелп по TIdHTTP.


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
rodendron
Дата 5.7.2007, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Я конечно сильно туплю, но как его вешать? Можно код? (
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

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

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

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

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

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


 




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


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

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