Flash甚至没有请求crossdomain.xml

时间:2014-12-16 22:11:20

标签: flash crossdomain.xml

我在a.domain.com托管 swf

  • 将播放器嵌入a.domain.com Flash播放器加载,发送加载的回叫,具有摄像头访问权限
  • 将播放器嵌入b.domain.com Flash播放器加载,无javascript回调,无摄像头访问

我的a.domain.com/crossdomain.xml文件:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="all"/>
  <allow-access-from domain="*.domain.com" secure="false"/>
  <allow-http-request-headers-from domain="*.domain.com" headers="*" secure="false"/>
</cross-domain-policy>

问题是,当嵌入在不同的子域上时,永远不会请求crossdomain.xml文件。

这里发生了什么事?

1 个答案:

答案 0 :(得分:0)

我认为您可能遇到安全错误,要验证这一点,请使用您可以在此处下载的Flash播放器调试版试用您的swf: Adobe.com : Flash Player Downloads

为了避免这个错误,您可以尝试使用它:

  • 在您的ActionScript代码中:Security.allowDomain('*');
  • 在您的swf对象HTML嵌入代码中:<param name="allowscriptaccess" value="always"/>