Показать сообщение отдельно
Старый 12.07.2010, 04:59
kerranswell вне форума Посмотреть профиль Отправить личное сообщение для kerranswell Найти все сообщения от kerranswell
  № 6  
Ответить с цитированием
kerranswell

Регистрация: May 2010
Сообщений: 26
Я тут покопался в протоколе Icecast и определил текущее название через php - Icecast посылает поток данных, и среди этих данных он вставляет метаданные. Фишка в том, чтобы их отыскать и прочесть. На php проблем с этим не возникло, но вот на флеше такая загвоздка:
Чтобы получить поток данных от сервера радио я формирую запрос:

Код AS3:
            var loader:URLLoader = new URLLoader();
 
            var header:URLRequestHeader = new URLRequestHeader("Icy-MetaData", "1"); // это оповещение сервера о том, что мне нужны метаданные
 
            var request:URLRequest = new URLRequest("сервер");
            request.requestHeaders.push(header);
            loader.load(request);
Загрузчик успешно начинает грузить поток данных. И тут проблема возникает: Поток данных ведь не истекает, поэтому событие Event.COMPLETE не наступает. А по событию ProgressEvent.PROGRESS в таком вот обработчике:

Код AS3:
        function progressHandler(event:ProgressEvent):void {
		var loader:URLLoader = URLLoader(event.target);
		trace(loader.data);
        }
loader.data равен undefined.

То есть, вопрос, как мне прочесть получаемые данные в этом случае, т.е. если их поток не прекращается?