Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.02.2011, 15:34
aassaaa вне форума Посмотреть профиль Отправить личное сообщение для aassaaa Найти все сообщения от aassaaa
  № 1  
Ответить с цитированием
aassaaa
 
Аватар для aassaaa

Регистрация: Mar 2010
Сообщений: 21
По умолчанию Проблема с чтением удаленного XML

Наверняка проблема связана с "безопасностью", но не понимаю как ее решать.
Есть удаленный сервер который возвращает xml файл.
Если запускать флешку из редактора, то все работает как нужно.
Если залить на хостинг и запустить - соединения с сервером не происходит.

Код AS3:
import flash.net.URLLoader;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLRequest;
import flash.text.TextField;
 
var navData:XML;
 
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(Event.COMPLETE, onComplete, false, 0, true);
loader.addEventListener(IOErrorEvent.IO_ERROR, onIOError, false, 0, true);
loader.load(new URLRequest("http://...../xml/"));
 
function onComplete(evt:Event):void {
	try {
		navData = new XML(evt.target.data);
		trace(navData.city);
 
		//var MyCity:TextField = new MyCity();
		MyCity.text = navData.city;
 
		loader.removeEventListener(Event.COMPLETE, onComplete);
		loader.removeEventListener(IOErrorEvent.IO_ERROR, onIOError);
	} catch (err:Error) {
		MyCity.text = 'xml parse error';
		trace ("Не удалось разобрать XML:\n" + err.message);
	}
}
 
function onIOError(evt:IOErrorEvent):void {
	MyCity.text = 'download error';
	trace("Ошибка при загрузке\n" + evt.text);
}
MyCity - это текстовое поле расположенное уже на сцене.

При запуске с сервера вообще ничего не происходит, ошибки не выводятся.
Как решить такую проблему?
Спасибо

Старый 22.02.2011, 17:17
TWETTI вне форума Посмотреть профиль Отправить личное сообщение для TWETTI Найти все сообщения от TWETTI
  № 2  
Ответить с цитированием
TWETTI
 
Аватар для TWETTI

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Как мне кажется надо рядом с файлом, который возвращает xml, положить файл политики безопасности(crossdomain.xml)
Код AS3:
<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*"/>
</cross-domain-policy>
и в коде загрузить его:
Код AS3:
Security.loadPolicyFile("http://www.some-site.com/crossdomain.xml");
Чтобы отловить эту ошибку надо подписаться на событие SecurityErrorEvent.SECURITY_ERROR.


Последний раз редактировалось TWETTI; 22.02.2011 в 17:21.
Старый 22.02.2011, 17:24
aassaaa вне форума Посмотреть профиль Отправить личное сообщение для aassaaa Найти все сообщения от aassaaa
  № 3  
Ответить с цитированием
aassaaa
 
Аватар для aassaaa

Регистрация: Mar 2010
Сообщений: 21
Спасибо. Проблема решена

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:11.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:11.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.