PDA

Просмотр полной версии : Вызвать Java-Функцию


Denis_gidin
12.07.2012, 15:25
Здравствуйте!
Делаю он-лайн плеер на флеше.
Принцип такой использую URLLoader загружаю исходный код страницы в переменную, потом делаю парсинг и извлекаю ссылки на mp3 файлы, далее добавляю их в плей лист.

Проблема такая с сайта http://rapidly.ru/melody/%CA%E8%ED%EE по поиску выводится только первые 10 ссылок.
Для того что бы посмотреть остальные ссылки надо нажимать кнопку далее на сайте или кликнуть на номер страницы.

Как мне во флеше программно загрузить исходный код страницы например под номером 3? А простыми словами как вызвать Java функцию get_pl3(3) на странице, что бы в дальнейшем парсить исходный код и извлекать из него другие ссылки на mp3 файлы. Прилагаю простой пример:

var l:URLLoader=new URLLoader();
btn.addEventListener(MouseEvent.CLICK,clickListener);

function clickListener(e:MouseEvent):void{
l.load(new URLRequest('http://rapidly.ru/melody/%CA%E8%ED%EE'));
//тут бы я хотел перейти на другую страницу
l.addEventListener(Event.COMPLETE,completeListener);
}

function completeListener(e:Event):void{
trace(l.data);
}

Пожалуйста подскажите!

КорДум
12.07.2012, 15:48
JavaScript, а не Java. Это во-первых.
А во-вторых ExternalInterface.call()

bav
12.07.2012, 15:51
Не, Саня, я тоже сначала про ExternalInterface написал, а потом удалил. Я так понимаю человеку нужно вызвать javascript на странице, на которой его флешки нет.

Denis_gidin
12.07.2012, 15:51
Спасибо! Был бы признателен если бы Вы показали на примере? Пожалуйста

Добавлено через 1 минуту
Не, Саня, я тоже сначала про ExternalInterface написал, а потом удалил. Я так понимаю человеку нужно вызвать javascript на странице, на которой его флешки нет.
bav вы правы.

Добавлено через 26 минут
не ужели без вариантов господа?

alatar
12.07.2012, 17:37
Denis_gidin, вы даже в браузере это сделать не сможете, из-за кросдоменной политики безопасности. Свяжитесь с разработчиками данного ресурса и спросите их о API для доступа к их сервису. Или разберитесь как работают их скрипты и делайте запросы напрямую.

КорДум
12.07.2012, 17:53
Хм, и правда, был не прав.
Тогда поддерживаю alatar:
Свяжитесь с разработчиками данного ресурса и спросите их о API для доступа к их сервису.

Denis_gidin
13.07.2012, 07:33
Все ясно! Спасибо всем!