| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > IdHTTP переадресация. Как получить ссылку? |
| Автор: upload 22.5.2009, 19:14 | ||||||||||||
| Есть ссылка: http://www.site.com/watch/325587/good_flv_rolik/ На странице есть кнопка download. При нажатии идет запрос:
При помощи снифа выяснил что затем идет переадресация на:
И начинается загрузка ролика (в браузере) Вопрос: как получить эту самую ссылку после переадресации? Сам ролик скачивать не надо. Только ссылку. 1. Что только не перепробовал. Пока не выходит.
Проблема в том, что начинается загрузка ролика и пока она не закончится Idhttp.Response.Location не сработает. 2. У IdHTTP есть событие OnRedirect. Если там написать:
То в memo1 появляется ссылка на которую переадресовывает, но ЗАГРУЗКА ПРОДОЛЖАЕТСЯ. Мне нужна только ссылка. Пробовал
Безполезно. ЗАГРУЗКА так и идет (снифом смотрю). Как быть? Добавлено через 8 минут и 18 секунд
Ошибка на Link:= IdHTTP.Response.Location; |
| Автор: SneG0K 22.5.2009, 19:51 |
| Тебе надо определить, как идет переадресация. Возможно она идет через скрипт, тогда найди скрипт и пропарсь адресс |
| Автор: MetalFan 22.5.2009, 20:31 | ||
и какая же ошибка? по идее, при HandleRedirects = false Get или Post должны выкидывать исключение, которое нужно поймать и обработать. как то так:
в ином случае скорее всего происходит то, что предположил SneG0K |
| Автор: upload 22.5.2009, 20:41 | ||
Нет, не через скрипт. Напрямую. ![]() Добавлено через 12 минут и 53 секунды Я смысл понял. Только вот не пойму почему ![]() |
| Автор: MetalFan 22.5.2009, 20:57 |
| этот код не помню под какую версию... то ли 9ка то ли 10ка. посмотри поля класса EIdHTTPProtocolException... может там по-другому называется это поле. |
| Автор: upload 22.5.2009, 20:59 | ||
| Может unit какой добавить? Попробовал ScktComp - не помогло. Добавлено через 13 минут и 29 секунд Так заработало:
Ладно, оставлю так. Но всё равно странно. Почему ErrorCode он не знает. |
| Автор: MetalFan 22.5.2009, 21:30 |
| Ctrl+Click может глянешь? |