Есть ли способ привязать мой Flex Builder к моему приложению Django - PullRequest
1 голос
/ 19 июля 2009

Я пытаюсь создать простое гибкое приложение, которое использует django в качестве серверной части. Есть вопрос:

Обычно при запуске приложения Flex Builder создает файл в каталоге на локальном ПК, а затем открывает браузер и указывает на него. Все было хорошо, но когда я решил связать сервер django с гибкими приложениями через провайдеров данных xml, я начал получать ошибки безопасности. (Связано с отсутствием crossdomain.xml). Когда я создал файл и поместил его на сервер:

   <?xml version="1.0"?>
<!-- http://www.foo.com/crossdomain.xml -->
<cross-domain-policy>
    <allow-access-from domain="http://127.0.0.1:8000"/>
    <allow-access-from domain="127.0.0.1"/>
</cross-domain-policy>

Затем снова попробовал приложение, я получил ошибку в консоли моего FB Ошибка: Запрос ресурса http://127.0.0.1:8000/go/active/ по запросу от файла: /// Users / oleg / Documents / FB3 / usersList / bin-debug В /usersList.swf отказано из-за отсутствия разрешений для файла политики.

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

Спасибо Олег

Ответы [ 3 ]

1 голос
/ 20 июля 2009

Мы много с этим боролись. Средства безопасности Flex не показались мне настолько хорошо сложенными, но, возможно, у нас просто были другие подходы, чем у разработчиков Adobe. Решение, которое работало для нас, состояло в том, чтобы обслуживать SWF и динамические данные с одного хоста и порта.

В наших блоках разработки мы сообщаем Apache, что нужно обслуживать SWF из каталога в рабочей области и динамические данные из локальной копии приложения. Когда мы запускаем производство, SWF и приложение одновременно отправляются на один и тот же виртуальный хост.

Если это неудобно для вас, директива Apache ProxyPass может использоваться для создания Apache переднего плана для других серверов. Я не использовал это в работе, но это было очень удобно для разработчиков.

0 голосов
/ 19 июля 2009

Вторая ошибка вызвана тем, что вы пытаетесь получить http-ресурсы из "файла". Я рекомендую изменить проект Flex Builder таким образом, чтобы он выводился в расположение на веб-сайте Django, а не в каталог flex-bin. Этот параметр можно изменить в диалоговом окне свойств проекта. Затем вы должны иметь возможность использовать один и тот же протокол и домен для вашего внешнего и внутреннего серверов.

0 голосов
/ 19 июля 2009

Я не знаю, как заставить FlexBuilder автоматически развернуть измененный SWF; чтобы это произошло, вы наверняка могли бы воспользоваться подходом автоматизации (таким как Maven и Flex-Mojos).

Тем не менее, чтобы избавиться от этой ошибки, обычно нужно просто добавить файл политики на сервер.

...