Flash Player上的外部Javascript接口不适用于CDN(Cloudfront)

Flash Player上的外部Javascript接口不适用于CDN(Cloudfront),javascript,flash,interface,cdn,amazon-cloudfront,Javascript,Flash,Interface,Cdn,Amazon Cloudfront,我有一个带有外部javascript接口的flash播放器:reloadData(),我在编辑页面上的信息时通过javascript调用该函数,基本上是为了保持页面上的数据和播放器中的数据同步 当播放机托管在本地时,reloadData()函数可以正常工作。当我们将其移动到CDN(Amazon Cloudfront)时,播放器成功加载,但外部javascript界面不再工作-console.log(player)显示以下内容: <object type=​"application/​x-s

我有一个带有外部javascript接口的flash播放器:reloadData(),我在编辑页面上的信息时通过javascript调用该函数,基本上是为了保持页面上的数据和播放器中的数据同步

当播放机托管在本地时,reloadData()函数可以正常工作。当我们将其移动到CDN(Amazon Cloudfront)时,播放器成功加载,但外部javascript界面不再工作-console.log(player)显示以下内容:

<object type=​"application/​x-shockwave-flash" data=​"[our_cloudfront_url].swf" width=​"920" height=​"404" id=​"player" style=​"visibility:​ visible;​ ">​

Uncaught TypeError: Object #<an HTMLObjectElement> has no method 'reloadData'
​
未捕获的TypeError:对象#没有方法“重载数据”
我知道在处理CDN上的项目时,有很多事情的行为会有所不同,但我想知道是否有人遇到过类似的问题并找到了解决方法


哦,是的……我们正在使用一个CNAME来指向cloudfront发行版(buildid.ourdomain.net=>distributionid.cloudfront.net)

好吧,我们找到了这个。有两件事是必要的:

  • 在嵌入swf时的页面上:allowScriptAccess=“始终”

  • 在swf本身中:System.security.allowDomain(“ourdomain.com”)


  • 我想这是很明显的,但我想我会把它贴在这里,以防像我这样的可怜的迷失的灵魂也有同样的问题。

    好吧,我们解决了这个问题。有两件事是必要的:

  • 在嵌入swf时的页面上:allowScriptAccess=“始终”

  • 在swf本身中:System.security.allowDomain(“ourdomain.com”)


  • 我想这有点明显,但我想我会把它贴在这里,以防像我这样的可怜的迷失灵魂也有同样的问题。

    附加更新,当allowScriptAccess参数设置为“always”时,错误消息会变为:“Uncaught error:在NPObject上调用方法时出错!”附加更新,当allowScriptAccess参数设置为“always”时,错误消息将更改为:“Uncaught error:在NPObject上调用方法时出错!”我在FlowPlayer中遇到了这个问题,它似乎自行执行步骤1(添加allowScripAccess参数)。我不清楚在哪里添加allowDomain调用。另外,我发现了一个相关的线程:有人说Security.allowDomain(“*”)是当前调用allowDomainI的方法,FlowPlayer有这个问题,它似乎自己执行步骤1(添加allowScripAccess参数)。我还不清楚在哪里添加allowDomain调用。另外,我发现了一个相关的线程:有人说Security.allowDomain(“*”)是当前调用allowDomain的方式