LocalConnection在本地浏览器中工作但不在远程站点中工作

时间:2010-01-23 04:07:01

标签: actionscript-3 flash-cs4 localconnection

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

当包含swf的页面在本地浏览器中加载时,localConnection可以正常工作。

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

任何人遇到这个?

3 个答案:

答案 0 :(得分:0)

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

您可以让LocalConnection跨域工作,但需要更多配置。这是Flex关于该主题的文档的链接。此问题与Flash / Flex相同。

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

答案 1 :(得分: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");

答案 2 :(得分:0)

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

我认为,调试实用程序的作者肯定会使用lc.allowDomain(“*”);将进一步检查。

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