2010-10-20 55 views
3

我已经将我的flex应用程序的协议从https更改为http,并且Flashplayer仍然希望使用https下载crossdomain.xml,但使用http的端口。 该应用程序访问http://domain01:8080/flex,它想获得https:.. samedomain ..:8080/crossdomain.xml(在https:.. samedomain..no_port/flex它工作正常)。flex应用程序中的crossdomain.xml错误协议

任何人都知道为什么?

非常感谢,

丹尼尔

+0

什么是你正在使用访问应用程序的URL,它是HTTPS? – 2010-10-21 11:03:48

回答

0

,因为我还没有尝试指定非默认端口,但一对夫妇的一块信息的,可能导致你的答案这种情况下没有直接回答:

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现场控制的允许交叉域的策略默认非套接字策略文件是“主单独”

也许尝试闪存的旧版本播放器查看9-> 10的变化是否导致问题,然后查找变更日志中的变化可能会更容易,或者可能是新版本中的错误。

好运 肖恩

0

FLEX(ATLEAST 3.5 AFAIK ..)得到了一些识别危机,当您更改端口,并使用HTTPS ...安全模型依赖的端口上。我不知道确切的原因对于这个问题,但我的解决方案是明确地在你的应用中加载crossdomain文件。

+0

Ofcourse,请在xml文件中将网址外部化;)..试图在政治上正确。 – 2011-01-16 08:22:48

0

当您遇到crossdomain问题时,值得记住的是,通过使用Security类,您可以始终显式控制加载的crossdomain.xml文件(实际上,策略文件可以具有任何名称)。在处理更复杂的真实案例(例如负载均衡或反向代理)时,从服务器根目录加载策略文件的默认行为通常会受到过多的限制。

尝试使用:

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

的ASDocs是here,并解释相当不错。

通过控制政策如何加载,您可以获得更多自由采取了很多猜测,否则可能是一个痛苦的,令人沮丧的经验。 Flash Player允许您加载多个策略文件,如果您需要与多个服务层集成(例如,通过HTTPS通过一个主机,通过HTTP通过另一个主机),则可以方便地使用这些文件。

祝你好运,

泰勒