Показать сообщение отдельно
Старый 04.05.2009, 01:19
vvvvvvf вне форума Посмотреть профиль Отправить личное сообщение для vvvvvvf Найти все сообщения от vvvvvvf
  № 1  
Ответить с цитированием
vvvvvvf

Регистрация: Mar 2009
Сообщений: 107
По умолчанию Проблемы с настройкой безопасности

Доброго времени суток.

Делаю приложение для вконтакте.ру.
Столкнулся с проблемой при обращении к собственному серверу, в лоадере срабатывает событие SecurityErrorEvent.SECURITY_ERROR, может кто то с таким уже сталкивался подскажите как можно во флешьке настроить безопасность чтобы в приложениях в контакте можно было свободно обращаться к своему серверу?

Добавлено через 3 минуты
вот класс который я использую для конекта, самое интересное что с моего компа все нормально работает, а если добавляю флешьку в приложения вконтакте, то срабатывает это событие dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);.

Код AS3:
package {
	import flash.display.Sprite;
	import flash.events.*;
	import flash.net.*;
	import flash.text.*;
 
	public class URLLoader_loadExample extends Sprite {
		private var xmlTextField:TextField = new TextField();
 
		public function URLLoader_loadExample() {
			xmlTextField.text = "Loading.";
			var loader:URLLoader = new URLLoader();
			configureListeners(loader);
 
			var request:URLRequest = new URLRequest("http://www.server.ru/game/1.php");
			try {
				loader.load(request);
			} catch (error:Error) {
				xmlTextField.text = "Unable to load requested document.";
			}
 
			xmlTextField.x = 10;
			xmlTextField.y = 10;
			xmlTextField.background = true;
			xmlTextField.autoSize = TextFieldAutoSize.LEFT;
			addChild(xmlTextField);
		}
 
		private function configureListeners(dispatcher:IEventDispatcher):void {
			dispatcher.addEventListener(Event.COMPLETE, completeHandler);
			dispatcher.addEventListener(Event.OPEN, openHandler);
			dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
			dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
			dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
			dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
		}
 
		private function completeHandler(event:Event):void {
			var loader:URLLoader = URLLoader(event.target);
			xmlTextField.text = "completeHandler: " + loader.data;
 
			var vars:URLVariables = new URLVariables(loader.data);
			xmlTextField.text = "The var=status is " + vars.status;
		}
 
		private function openHandler(event:Event):void {
			xmlTextField.text = "openHandler:" + event;
		}
 
		private function progressHandler(event:ProgressEvent):void {
			xmlTextField.text = "progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal;
		}
 
		private function securityErrorHandler(event:SecurityErrorEvent):void {
			xmlTextField.text = "securityErrorHandler: " + event;
		}
 
		private function httpStatusHandler(event:HTTPStatusEvent):void {
			xmlTextField.text = "httpStatusHandler: " + event;
		}
 
		private function ioErrorHandler(event:IOErrorEvent):void {
			xmlTextField.text = "ioErrorHandler: " + event;
		}
	}
}