现在的位置: 首页 > 综合 > 正文

flex关于跨域访问会引起安全沙箱问题,下面是在网上找到的解决安全沙箱问题的方法

2013年01月03日 ⁄ 综合 ⁄ 共 851字 ⁄ 字号 评论关闭

 

方法一:在目标服务器上布署crossdomain.xml文件(我用的此方法很管用,放上就没问题了) 需要远程服务根目录定义有crossdomain.xml文件,如下:
<?xml version="1.0" encoding="UTF-8" ?>

 <cross-domain-policy>

<allow-access-from domain="*"/>

 </cross-domain-policy>
方法二:使用代理,把Flex要访问的远程文件通过asp, php, jsp等脚本读取到本地,然后再由Flex去访问;
方法三:使用Adobe flash player 9 打开程序后,点击菜单栏中文件->创建播放器...即生成exe文件,运行exe文件即可突破安全限制;
方法四:1、找到这个文件夹:c:\Documents and Settings\<UserName>\Application Data\Macromedia\Flash Player\#Security 2、在其下建立一个名为"FlashPlayerTrust"的文件夹 3、在"FlashPlayerTrust"文件夹下新建一TXT文件,内容如下:
c:\ d:\ e:\ f:\ 4、将该txt文件命名为:"myTrustFiles.cfg" 再打开你硬盘里的SWF文件,就不会出现那个烦人的安全设置提示窗口了

方法五:用HttpService它默认是有Proxy的,需要配置flex-config.xml,里面有一段:

 <http-service-proxy>

 <whitelist> ………………

 </whitelist>

</http-service-proxy>
这个是白名单,一般情况下是注释掉的,也就是默认只有本地的http://{localserver}/*和https://{localserver}/*可以访问。其他的需要在flex-config.xml里的自行修改成需要的就可以了。
访问本地自然不会跨域,不过你肯定访问局域网其他机器了,所以是依照白名单规则,属于跨域

抱歉!评论已关闭.