zoukankan      html  css  js  c++  java
  • 安全沙箱冲突:Loader.content:XX 不能访问 XX 可以通过调用 Security.allowDomain 来避免此冲突。

    参考资料:http://tieba.baidu.com/p/882855105

    感谢:Z0287yyy

    感谢分享精神。

    具体解决方案:
    在loader去load的时候,带上这个参数

    var context:LoaderContext = new LoaderContext();
    context.applicationDomain = new ApplicationDomain();    //这个是关键
    context.checkPolicyFile = true;
    context.securityDomain = SecurityDomain.currentDomain;

    Loader.load(new URLRequest(url), context);

    原文如下:


    如题,最近遇到这么一个难题:
    SecurityError: Error #2121: 安全沙箱冲突:LoaderInfo.content:XXX1不能访问XXX2.
    可以通过调用 Security.allowDomain 来避免此冲突。
    这个问题,其实很搞笑,因为跟Security.allowDomain没有任何关系。
    (也可能有,请高手留言斧正。)

    因为我在主文件XXX1和子文件XXX2里面有写了
    Security.allowDomain("*");
    Security.allowInsecureDomain("*");
    而且crossdomain.xml文件都在。
    具体解决方案:
    在loader去load的时候,带上这个参数

    var context:LoaderContext = new LoaderContext();
    context.applicationDomain = new ApplicationDomain();    //这个是关键
    context.checkPolicyFile = true;
    context.securityDomain = SecurityDomain.currentDomain;

    Loader.load(new URLRequest(url), context);

    context.applicationDomain = new ApplicationDomain();
    的时候会指定新的域,与原有的flex程序域不同,所以不会出问题了。


    ApplicationDomain 的说明:


    加载到子域(模块)
    类似于“继承”,子域可以直接获得父域所有的类定义,反之父域得不到子域的。和继承关系不同的是,如果子域中有和父域同名的类,子域定义会被忽略而使用父域的定义。

    加载到同域(运行时共享库)

    类似集合里的合并关系。被加载swf里的所有类定义被合并到当前域中可以直接使用。和加载到子域相同,和当前域同名的定义也会被忽略。

    加载到新域(独立运行的程序或模块)
    swf载入指定域之前,先要检查该域及其父域中是否存在同名类,重复定义一概忽略。如果加载别人写的程序,或者使用旧版本的主程序加载新版本的模块,为避免类名冲突就要加载到新域独立运行以使用自己的类。

     
    当然flash加载flex,或者flex加载flash就没有这个问题。
    因为flash和flex的空间可能就不同。

    只有flex加载flex会出现这个问题。。稀烂。。。

    另外,
    context.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
    也是不行的。。。他意味着加载到同一个有域,,有冲突,(程序可能会卡在这个地方)
  • 相关阅读:
    一些话
    把视频文件拆成图片保存在沙盒中
    相册视频保存进沙盒
    数据库
    C 计算数组长度
    iOS之与JS交互通信
    iOS之duplicate symbols for architecture x86_64错误
    iOS之隐藏状态栏
    iOS之开发程序之间的跳转及跳转到appStore
    iOS之常用的判NULL的方法
  • 原文地址:https://www.cnblogs.com/yelaiju/p/3494797.html
Copyright © 2011-2022 走看看