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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.05.2009, 01:19
vvvvvvf вне форума Посмотреть профиль Отправить личное сообщение для vvvvvvf Найти все сообщения от vvvvvvf
  № 1  
Ответить с цитированием
vvvvvvf
[+1 08.07.09]

Регистрация: 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;
		}
	}
}

Старый 04.05.2009, 01:24
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 2  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
поиск на этом форуме не выключали. я думаю вопрос поднимался не одну сотню раз.
а вообще crossdomain.

Старый 04.05.2009, 01:40
vvvvvvf вне форума Посмотреть профиль Отправить личное сообщение для vvvvvvf Найти все сообщения от vvvvvvf
  № 3  
Ответить с цитированием
vvvvvvf
[+1 08.07.09]

Регистрация: Mar 2009
Сообщений: 107
Цитата:
Сообщение от BlooDHounD Посмотреть сообщение
поиск на этом форуме не выключали. я думаю вопрос поднимался не одну сотню раз.
а вообще crossdomain.
Как я понял я должен попросить администратора вконтакте.ру добавить мой сайт в список этого crossdomain, а что разве нету другого способа настроить безопасность?

я считаю это бред какой-то!

Старый 04.05.2009, 02:34
AL.exe вне форума Посмотреть профиль Отправить личное сообщение для AL.exe Посетить домашнюю страницу AL.exe Найти все сообщения от AL.exe
  № 4  
Ответить с цитированием
AL.exe
 
Аватар для AL.exe

Регистрация: Jan 2004
Адрес: Net
Сообщений: 1,049
Отправить сообщение для AL.exe с помощью ICQ
Цитата:
я должен попросить администратора вконтакте.ру добавить мой сайт в список этого crossdomain
Именно
__________________
Дело не в тебе

Старый 04.05.2009, 07:36
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 5  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от vvvvvvf Посмотреть сообщение
Как я понял я должен попросить администратора вконтакте.ру добавить мой сайт в список этого crossdomain, а что разве нету другого способа настроить безопасность?

я считаю это бред какой-то!
Приложение где лежит? Если на доменах vkontakte, то это вам нужно на своём сайте размещать кроссдоменник, с разрешением подключаться с доменов vkontakte. И вообще, что-то я сомневаюсь, что сей момент был пропущен в документации к API.

Старый 22.05.2009, 11:51
Nyra вне форума Посмотреть профиль Отправить личное сообщение для Nyra Найти все сообщения от Nyra
  № 6  
Ответить с цитированием
Nyra

Регистрация: Oct 2008
Сообщений: 4
Здравствуйте! Я столкнулась с аналогичной проблемой.
Мне нужно чтобы форма обратной связи работала как приложение для в контакте.
В самом флеше следующий код:
Код:
Security.loadPolicyFile("http://site.ru/folder/crossdomain.xml");


submitButton.addEventListener(MouseEvent.MOUSE_UP , sendForm);
function sendForm(event:MouseEvent):void {
	if  ( emailBox.text.indexOf("@" ) == -1  ||  emailBox.text.indexOf("." ) == -1 ) {
		submitMessages.text = "Пожалуйста, введите свой e-mail";
	} else if  (instBox.text == "" ) { 
		submitMessages.text = "Пожалуйста, введите название института";
	} else {
		submitToPHP();
	}
}


function submitToPHP() {

var variables:URLVariables = new URLVariables();
var request:URLRequest = new URLRequest();
request.url="http://site.ru/folder/sendform.php";
request.method=URLRequestMethod.GET;
request.data=variables;

variables.name_text=nameBox.text;
variables.inst_text=instBox.text;
variables.email_text=emailBox.text;

var loader:URLLoader = new URLLoader();
loader.dataFormat=URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, completeHandler );
try {
	loader.load(request);
	submitMessages.text="Отправка письма...";
} catch (error:Error) {
	trace(error.message);
	submitMessages.text="Невозможно отправить";
}
function completeHandler(event:Event):void {
	trace(event.target.data.successMessage);
	submitMessages.text=event.target.data.successMessage;
	so.clear();
	nameBox.text="";
	instBox.text="";
	emailBox.text="";
}
}
В crossdomain.xml по адобовской справке поставила:
Код:
<?xml version="1.0"?> 
<!-- http://site.ru/folder/crossdomain.xml --> 
<cross-domain-policy> 
<allow-access-from domain="*" /> 
</cross-domain-policy>
на своем хостинге поставила права доступа к folder, crossdomain.xml и sendform.php 777... В документации к API http://vkontakte.ru/pages.php?o=-1&p... API ВКонтакте сего момента не нашла...

вобщем не работает. Подскажите, пожалуйста, в чем ошибка.

Старый 22.05.2009, 18:31
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Так какая ошибка? SecurityError?

Старый 22.05.2009, 18:36
Nyra вне форума Посмотреть профиль Отправить личное сообщение для Nyra Найти все сообщения от Nyra
  № 8  
Ответить с цитированием
Nyra

Регистрация: Oct 2008
Сообщений: 4
чесно говоря не знаю, просто сообщение не отправляется с контакта, OUTPUT не знаю как посмотреть, когда флешка загружена как приложение.
при запуске на локальной машине никаких ошибок не выдает, спокойно отправляет письма и они доходят.
могу исходники выложить


Последний раз редактировалось Nyra; 22.05.2009 в 21:02.
Старый 30.05.2009, 22:36
ancle feudor вне форума Посмотреть профиль Отправить личное сообщение для ancle feudor Посетить домашнюю страницу ancle feudor Найти все сообщения от ancle feudor
  № 9  
Ответить с цитированием
ancle feudor
 
Аватар для ancle feudor

Регистрация: Jan 2002
Адрес: Москва
Сообщений: 47
Отправить сообщение для ancle feudor с помощью ICQ
была такая же проблема с получением loader.content.
решение - использовать LoaderContext

Старый 15.06.2009, 18:20
klafuda_klalafu вне форума Посмотреть профиль Отправить личное сообщение для klafuda_klalafu Найти все сообщения от klafuda_klalafu
  № 10  
Ответить с цитированием
klafuda_klalafu

Регистрация: Aug 2004
Адрес: N. Novgorod
Сообщений: 127
Отправить сообщение для klafuda_klalafu с помощью ICQ
никак не могу подцепить кроссдомен !... наверно делаю что то неверно! помогите
Код AS3:
public function start():void{
      //политика безопастности
      Security.loadPolicyFile("http://localhost/crossdoamin.xml");
      Security.allowDomain("http://localhost");	
      cfgXML = new XML();
      var loader:URLLoader = new URLLoader();
      configureListeners(loader);
      loader.load(new URLRequest("http://localhost/cfg.xml"));
}
так правильно ??? чего не хватает ?
не работает и все тут ....
как не крутись
файл лежит в домене к примеру nethost
и с локалхоста берет XML ,.... если запустить из под флеша работает как тока через браузер .... фигвам!

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

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

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


 


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


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