2011-01-12 73 views
0

我将独立的Flex应用程序转换为模块。现在,它是一个模块,当我登录(并调用后端服务)时,我遇到了安全沙箱违例。Flex模块抛出安全沙箱违规

登录处理程序抛出此错误字符串:'发送失败',具有更多描述:'Channel.Connect.Failed错误NetConnection.Call.Failed:HTTP:失败:url:'http:// myUrl:8080/AppManager的/ messagebroker/AMF”。

然后FB控制台抛出'未处理的安全沙箱违例错误'。

将应用程序转换为模块会导致沙箱违规?

感谢您的任何有用的提示。

+0

由于Flex模块必须与加载它的应用程序(SWF)位于同一安全域中,因此当您在AIR应用程序中使用模块时,任何模块SWF都必须位于与主应用程序SWF相同的目录中,或者其中一个子目录确保与主应用程序SWF类似,模块SWF位于AIR应用程序安全沙箱中。验证此方法的一种方法是确保模块位置的相对URL不需要“../”(“上一级”)符号在应用程序目录或其某个子目录之外进行导航。 – shaunhusain 2011-01-12 18:15:48

+0

^这是来自adobe文档,也很好奇,但它是否请求crossdomain.xml文件,使用Firebug或Charles进行调试可能有助于查看更细粒度的内容什么是和什么不发生 – shaunhusain 2011-01-12 18:18:59

回答

1

我正在广泛使用模块,并没有遇到这种情况。我遇到了一些内存问题,我必须通过在主要模块中实际声明模块实例来解决这个问题......我不必创建实例,只需声明一个变量即可获得链接权限,然后全部其他模块针对该主模块进行编译。内存错误消失了,所有其他模块也小得多。