这是我放在我的Web.config
的同一个文件夹中的crossdomain.xml:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" secure="false" />
<allow-http-request-headers-from domain="*" headers="*" />
</cross-domain-policy>
虽然我可以使用Security.loadPolicyFile("http://localhost:52090/crossdomain.xml")
加载。
当我的瑞士法郎尝试与我的本地网站(asp.net mvc)通信时,它说:
错误#2048:安全沙箱冲突:http://localhost:52090/Content/Swf/MyApp.swf无法从localhost加载数据:52090
我该如何解决?
答案 0 :(得分:2)
由于您使用基于as3httpclientlib
的{{1}},而不是Socket
,您应该设置套接字策略服务器而不是http 1(因此您的URLLoader
不会被使用在这种情况下闪现)。
要设置Flash策略服务器,您可以使用本文http://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html中的perl脚本和@Bart Friederichs建议的策略xml(带crossdomain.xml
属性)
答案 1 :(得分:1)
试试这个:
<?xml version="1.0"?>
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>
另外,如果您自己发送,请务必最后send a null-character。