неверный протокол для crossdomain.xml в приложении Flex - PullRequest
3 голосов
/ 20 октября 2010

Я изменил протокол для своего гибкого приложения с https на http, и flashplayer все еще хочет загрузить crossdomain.xml, используя https, хотя и с портом для http.доступ к приложению осуществляется по адресу http://domain01:8080/flex, и он хочет получить https: .. samedomain ..: 8080 / crossdomain.xml (по адресу https: .. samedomain..no_port / flex работает нормально).

Кто-нибудь знает, почему?

Большое спасибо,

Даниэль

Ответы [ 3 ]

0 голосов
/ 16 января 2011

Flex (Atleast 3.5 AFAIK ..) получает некоторую идентификацию кризиса, когда вы меняете порт и используете Https ... Модель безопасности зависит от порта .. Я не знаю точную причину проблемы, но мое решение было явно загрузите файл междомена в ваше приложение ..

System.security.loadPolicyFile ( 'https://mydomain:port/crossdomain.xml');

0 голосов
/ 05 апреля 2011

Когда вы сталкиваетесь с междоменными проблемами, стоит помнить, что с помощью класса Security вы всегда можете явно контролировать, какой файл crossdomain.xml загружается (на самом деле файл политики может иметь любое имя). Поведение по умолчанию при загрузке файла политики из корневого каталога сервера часто может быть слишком ограничительным при работе с более сложными, реальными случаями (например, с балансировкой нагрузки или обратными прокси-серверами).

Попробуйте использовать:

Security.loadPolicyFile(<URI to the policy file goes here>);

ASDocs здесь и объясняют это довольно хорошо.

Взяв под контроль загрузку политик, вы можете получить больше свободы и избавиться от многих догадок из того, что в противном случае может быть болезненным, разочаровывающим опытом. Flash Player позволяет загружать несколько файлов политик, что удобно, если вам нужно интегрироваться с несколькими уровнями обслуживания (например, на одном хосте через HTTPS и другом через HTTP).

Удачи,

Тэйлор * * 1016

0 голосов
/ 04 января 2011

Прямого ответа нет, так как я не пробовал этот сценарий указания порта не по умолчанию, но пара информации, которая может привести вас к ответу:

http://learn.adobe.com/wiki/download/attachments/64389123/CrossDomain_PolicyFile_Specification.pdf?version=1

Это может быть интересно:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
   <allow-access-from domain="*.example.com" to-ports="507,516-523"/>
</cross-domain-policy>

или это:

10,0,12,0 По умолчанию для разрешенных кросс-доменных политик для файлов политики, не относящихся к сокетам, задано значение "только для главного"

Возможно, попробуйте более старую версию Flash Player, чтобы увидеть, не вызывает ли проблема что-то в изменениях из 9-> 10, тогда поиск изменений в журналах изменений может быть проще или, возможно, это ошибка в новой версии.

Удачи Shaun

...