0

真的对 LocalConnection 的片状行为感到困惑。使用使用 localConnection 工作的调试实用程序(LuminicBox)。

当包含 swf 的页面在本地加载到浏览器中时,localConnection 起作用。

当在远程站点上“实时”查看相同的页面和 swf 时,localConnection 失败。

有人遇到这个吗??

4

3 回答 3

0

默认情况下,LocalConnection 允许从同一域加载的 swf 之间进行通信。当您在浏览器中加载 swf 时,调试实用程序也必须从同一域加载到浏览器中。

您可以让 LocalConnection 跨域工作,但它需要更多配置。这是 Flex 的有关该主题的文档的链接。这个问题对于 Flash/Flex 也是一样的。

http://livedocs.adobe.com/flex/3/langref/flash/net/LocalConnection.html

于 2010-01-23T04:22:17.800 回答
0

我没有使用过LuminicBox,但如果您有权访问初始化接收LocalConnection对象的代码,请调用该对象。allowDomain("your.domain")

var lc:LocalConnection = new LocalConnection()
lc.allowDomain("your.domain.com");
//or even better - allow all domains
lc.allowDomain("*");

如果接收 SWF 托管在 HTTPS 页面上,而发送方托管在普通页面上,则需要调用allowInsecureDomain.

lc.allowInsecureDomain("your.domain.com");
于 2010-01-23T06:24:32.720 回答
0

我认为问题的一部分是我无法访问初始化接收 LocalConnection 对象的代码,只是发送 LC(我的应用程序)。

不过,我假设调试实用程序的作者肯定会使用 lc.allowDomain("*"); 将进一步检查。

我知道的唯一另一个原因是,当您尝试打开一个新连接时,现有的 LC 连接已经打开。

于 2010-01-23T13:41:34.073 回答