安全沙箱的无奈解决办法。

在编写FLEX程序时,老是遇到安全沙箱错误,经过多次失败、GOOGLE搜索,得出如下结论:

1.对于ADOBE搞出的安全沙箱的必要性,网上N多人转贴,内容雷同,讲得头头是道,但作为一个开发人员,觉得完全是鸡肋。

安全沙箱我碰到两种情况,一种是弹出一个对话框,里面写着“安全沙箱。。。。不能从加载数据”。还有一种是以httpservice方式向某服务器请求数据时,直接调用失败事件方法,而在FB3中却可以正常运行。

2.如果被请求的服务器如http://111.111.111.111所在的服务器是你可更改的,那么恭喜你,在服务器相应的根目录(TOMCAT在“Tomcat 6.0\webapps\ROOT”)中放一个名为crossdomain.xml的配置文件,至于为什么要放这个文件,网上也是N多贴子,反正我是不关心为什么,如果你关心,自己搜了看看,文件内容如下:

<?xml version="1.0"?>
 <!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy> <site-control permitted-cross-domain-policies="all"/> <allow-access-from domain="*"/>
</cross-domain-policy>
基本可以解决问题,为啥是基本呢,因为不排除你放错地方,哈哈。

2.如果被请求的服务器是别人的,也就是你没有更改的权利,没办法放上一个文件,那就同病相怜了,因为我现在也碰到了这个问题,在一个应用中要取GOOGLE服务器的数据,所有的代码写完后在FB3中调试一切正常,当把SWF放到网页中,就一直调用获取失败的那个方法,在网上搜了N多贴子,什么花招都有

      1.在网页放SWF的地方加:<param name="allowScriptAccess" value="always" />,然后在AS代码中再加一行代码(忘了那行代码了),试过了,也许是我太笨,无法理解作者的精髓,结果是对于我这种情况,不好使。

      2.修改那个CFG文件,我试过了,似乎对本地目录好使,对于这种HTTP的不管用。

还有一种办法,也是经历了无数次失败后,我选择的无奈方法,就是用自已的服务器去请求数据,以我的这个就用为例:原来的流程是SWF直接向GOOGLE请求数据,解析返回的数据。现在改为SWF向我的TOMCAT服务请求数据,由servlet去请求,然后再转给SWF.....

 

本人才疏学浅,学FLEX也不久,以上仅是个人之所见,如果您有好办法解决我碰到的这个问题,望赐教,staticemail@163.com,QQ:20161552

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值