什么是crossdomain.xml文件?

OrE*_*lse 17 asp.net flash swfobject crossdomain.xml cross-domain

其实我希望我知道从哪里开始......

我在我的个人网站上嵌入了第三方SWF图像库控件.

SWF是XML驱动的.我动态加载XML文件如下....

  var flashvars = { xmlPath: "http://www.example.com/xml.aspx" };
                var params = { allowFullScreen: "true", wmode: "transparent", allowScriptAccess: "always"};
                var attributes = {};
                swfobject.embedSWF("main.swf", "gallery", "100%", "100%", "9.0.0", "expressInstall.swf", flashvars, params, attributes);
Run Code Online (Sandbox Code Playgroud)

问题是页面没有按预期工作.实际上它只适用于Firefox,而不适用于Chrome或IE

用fiddler检查请求后,我发现找不到文件crossdomain.xml.所以,stackoverflow帮助我找到了一个样本......

<?xml version="1.0" ?>
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="master-only"/>
  <allow-access-from domain="*"/>
  <allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
Run Code Online (Sandbox Code Playgroud)

添加crossdomain.xml后,网页现在可以在Firefox和IE浏览器中使用在Chrome中我仍然有问题.

所以这里有几个问题......

1)什么是crossdomain.xml?

2)如何让我的网页也能在Chrome中运行?

Tom*_*cek 23

"跨域策略文件是一种XML文档,它授予Web客户端 - 例如Adobe Flash Player,Adobe Reader等 - 许可来处理跨多个域的数据." 摘自Adobe网站http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html.

编辑:回答问题2:Flex crossdomain.xml在Chrome/Firefox中无法正常工作?.为开发人员,Fiddler(或类似)安装Adobe Flash Player,这些工具应该让您的生活更轻松.另请阅读http://kb2.adobe.com/cps/839/cpsid_83950.html.

  • 我认为这是因为SO比Google更快更容易:) (15认同)

OrE*_*lse 8

对于像我这样的所有新手,SWF也适用于Chrome!

区别在于http://www.example.com并且http://example.com是两个不同的"实体".

我正在加载文件var flashvars = { xmlPath: "http://www.example.com/xml.aspx" };并使用Chrome在"不同的域"上进行测试http://example.com