关于FLEX的安全沙箱问题


 load 一张网络上的图片,发现不能用 setMask 对其遮罩,trace 出现“安全沙箱冲突”。知道原因就好办了,调用不同域的对象或变量需要 allowDomain,如下:

System.security.allowDomain("www.zhugao.cn");
loadMovie("http://www.zhugao.cn/images/links/links_zhugao.jpg", my_mc);

注意,“www.zhugao.cn”和“zhugao.cn”不是相同域,根据目标而定。例如 loadMovie("http://player.zhugao.cn/***.jpg", my_mc); 那么 allowDomain 的应该是 player.zhugao.cn,而不是 zhugao.cn,也不是 www.zhugao.cn

如果要允许多个域,可以用逗号隔 开:
System.security.allowDomain("www.zhugao.cn", "zhugao.cn", "player.zhugao.cn");

播放器在 8.0 以上可以使用通配符 “*” 来允许所有域:
System.security.allowDomain("*");

posted on 2010-05-13 17:03  念时  阅读(238)  评论(0编辑  收藏  举报

细节决定成败!态度决定一切!