В Chrome при сетевой ошибке объект события в обработчике ошибок ведет себя не так, как IE и flash player (то есть непосредственно запускает swf, а не из браузера). Рассмотрим следующий тестовый код:
private function loadData():void {
var loader:URLLoader = new URLLoader();
loader.addEventListener(IOErrorEvent.IO_ERROR, onError);
loader.addEventListener(Event.COMPLETE, onColmplete);
loader.load(new URLRequest("http://www.jsfbjdsssde.com"));
debugField.text = "loading"; // this is a TextField
}
private function onColmplete(evt:Event):void {
debugField.text = "complete";
}
private function onError(evt:IOErrorEvent):void {
debugField.text = "error : " + evt.text;
}
В IE и Flash Player debugField показывает
error : Error #2032: Stream Error. URL: <a href="http://www.jsfbjdsssde.com" rel="nofollow noreferrer">http://www.jsfbjdsssde.com</a>
, но в Chrome это
error : Error #2032
, то есть URL-адрес удаляется из текста. Почему это отличается? Кто-нибудь может предложить какой-нибудь способ получить URL в обработчике ошибок? Или это ошибка самого Chrome?
Моя версия Chrome - 5.0.375.86