【发布时间】:2010-09-07 00:42:42
【问题描述】:
这个错误刚刚开始在我们的网站上出现。
调用 Location.toString 方法的权限被拒绝
我看到 google 帖子表明这与 flash 和我们的 crossdomain.xml 有关。发生这种情况的原因是什么,您如何解决?
【问题讨论】:
标签: javascript flash
这个错误刚刚开始在我们的网站上出现。
调用 Location.toString 方法的权限被拒绝
我看到 google 帖子表明这与 flash 和我们的 crossdomain.xml 有关。发生这种情况的原因是什么,您如何解决?
【问题讨论】:
标签: javascript flash
您是否使用 javascript 在指向不同域的帧/iframe 之间进行通信? JS“同源/域”安全策略不允许这样做。即,如果你有
<iframe name="foo" src="foo.com/script.js">
<iframe name="bar" src="bar.com/script.js">
并且 bar.com 上的脚本尝试访问 window["foo"].Location.toString,您将得到这个(或类似的)异常。另请注意,如果您有来自不同子域的内容,同样的来源策略也可以生效。 Here 您可以通过示例找到简短且中肯的解释。
【讨论】:
您可能遇到过this posting,但似乎闪存安全更新改变了 crossdomain.xml 的行为,要求您指定安全策略以允许从远程域发送任意标头。 Adobe 知识库文章(也在原帖中引用)为here。
【讨论】:
这个post 表明有一行需要添加到crossdomain.xml 文件中。
<allow-http-request-headers-from domain="*" headers="*"/>
【讨论】:
这可能是由于 4 月初发布的 Flash Player 版本发生了变化,我不太确定具体细节,但我认为此功能存在安全问题。
您需要做的确实是将其添加到您的 crossdomain.xml(应该在您的服务器 webroot 中)
您可以在这里阅读更多内容:http://www.adobe.com/devnet/flashplayer/articles/flash_player9_security_update.html
【讨论】: