Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   socket.connect к произвольному серверу (http://www.flasher.ru/forum/showthread.php?t=147950)

delta9 17.12.2010 20:08

socket.connect к произвольному серверу
 
Добрый день.

Я во flash / flex новичок, поэтому прошу отнестись снисходительно :)

Пытаюсь написать flex-приложение, читающее котировки с сервера. Сервер, простейший демон на с++, берет данные из БД и построчно отдает их в сеть. С исходниками сервера сложно - утратились.

Подключиться к нему я могу - но только из flashplayer. При запуске swf в браузере - ничего не происходит.

Как я понял это - ограничение политики безопасности флэш. Сервер с данными и web-сервер с флешкой - разные машины, в разных сетях.
Как можно решить эту проблему? Изменить сервер я не могу (разве-что полностью его переписать).

OS:
Linux 2.6.26-1
Плеер:
flashplayer 9.0.115.0
Компиляторы:
1 ) mxmlc Version 3.0.0 build 477
2) mxmlc Version 4.1.0 build 16076

И еще :
при компиляции mxmlc v. 4.1.0 и запуске в плеере получаю ошибку:
Код:

Error #2046: The loaded file did not have a valid signature.
Failed to load RSL http://fpdownload.adobe.com/pub/swz/tlf/1.1.0.604/textLayout_1.1.0.604.swz
Failing over to RSL textLayout_1.1.0.604.swz
SecurityError: Error #2148: SWF file file:///home/delta9/prog/flash/Kotirovki/kot.swf cannot access local resource file:///home/delta9/prog/flash/Kotirovki/textLayout_1.1.0.604.swz. Only local-with-filesystem and trusted local SWF files may access local resources.
        at flash.net::URLStream/load()
        at flash.net::URLLoader/load()
        at mx.core::CrossDomainRSLItem/load()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:240]
        at mx.core::CrossDomainRSLItem/loadFailover()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:376]
        at mx.core::CrossDomainRSLItem/itemErrorHandler()[E:\dev\4.x\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:411]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at flash.net::URLLoader/redirectEvent()


Это из-за чего может возникнуть?

Спасибо.

Trein 20.12.2010 13:39

Сервер должен отсылать файл политики безопасности разрешающий подключение с вашего домена. Для этого не обязательно переписывать ваш котировочный сервер. Можно написать свое простенькое серверное приложение, которое будет прослушивать 843 порт и отправлять файл политики безопасности разрешающий подключение с вашего домена к порту, который слушает котировочный сервер.

Ошибка 2148 может возникнуть, если ваша флеха пытается обратиться к какому-ту файлу из локальной области, а у вас стоит другой тип безопасности.


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

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