使用来自其他域的远程加载的类SWF

时间:2012-08-14 08:36:46

标签: actionscript-3 flex cross-domain

这是关于从同一个域加载SWF。

有一个小的SWF文件应该从/ SharedObject加载/保存数据。它位于一个专用域中(我们称之为域A)。

有几个应用程序需要以共享方式访问上述数据(即来自不同域(B,C,D,...)的所有应用程序。当然,使用来自内部的SharedObject应用程序不会这样做,因为SharedObject是每个域。

  • 从域B中的应用程序我将从域A加载策略文件。策略文件允许所有域通过“*”和域“B”具体。
  • 我在应用程序
  • 中通过allowDomain("A")允许域名A.
  • 我允许通过allowDomain("B")
  • 在数据处理SWF中使用域B.
  • 我正在添加 loaderContext ,如下所示:new LoaderContext(true, new ApplicationDomain(), SecurityDomain.currentDomain);。我明确需要加载的SWF来保留它自己的域“A”上下文,这样SharedObject将写在“A”命名空间而不是托管应用程序的一个(“B”),因此“{{1 }}“

使用new ApplicationDomain()加载数据处理SWF。

如果我理解正确,上述所有内容都应该允许访问加载的SWF的类成员。正如你现在可能已经猜到的那样,它并没有真正起作用。当我试图将SWFLoader的内容转换为SWF的文档类时,由于安全问题它是SWFLoader(我尝试加载null并且它工作正常,所以我知道类是相同的,但这不是我需要的东西)

我错过了什么? 或者是否有更好的解决方案在不同域上的应用程序之间本地共享数据?

1 个答案:

答案 0 :(得分:0)

http://jodieorourke.com/view.php?id=115&blog=news

显然,过度安全是不好的。