注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 利用手机和电池实现反地心..
 帮助

Flash中XML跨域访问数据的规则


2007-08-29 20:33:17
 标签:XML Flash 跨域访问   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://dannyyuan.blog.51cto.com/212520/40282
Flash MX 2004中,可以用内置的XML类来实现访问WEB SERVICE从而取得数据。但从其开发文档中我们知道:当Flash文档发布服务器和WEB SERVICE服务器不在一台机器(Flash 7 or later)时,需要在WEB SERVICE服务器中设置跨域访问控制配置WWW页面--策略文件。方面就是在WEB SERVICE服务器的根站点生成一个XML文档供Flash访问,文档名应该是crossdomain.xml。
该策略文件内容大概如下
<?xml version="1.0"?>
<!-- http://192.168.1.1/crossdomain.xml -->
<cross-domain-policy>
  <allow-access-from domain="www.aaa.com" />
  <allow-access-from domain="*.bbb.com" />
  <allow-access-from domain="192.168.1.1" />
</cross-domain-policy>
上例表示允许来自www.aaa.com, *.bbb.com, 192.168.1.1的Flash文档跨域访问本机数据(FTP,HTTP,HTTPS方式)。需要注意的是,该策略文件不兼容DNS解析,这说明同一个结点的DNS和IP必须分别在上述策略文件授权。通过加属性secure="false"
(默认是true)到某个allow-access-from元素可以改变安全设置。
 
 
对于HTTP和HTTPS访问的区别,这里总结一个规则,即
1、当secure="false"设置后,Flash文档访问协议(发布URL协议)和数据访问协议(XML请求URL协议)可以是HTTP和HTTPS,即四种组合均能成功。
2、否则,Flash文档访问协议(发布URL协议)为HTTP和数据访问协议(XML请求URL协议)为HTTPS时不能成功返回数据。HTTPS返回内部安全错误。其余三种组合可以成功。

本文出自 “守望者的技术日记和六味生活” 博客,请务必保留此出处http://dannyyuan.blog.51cto.com/212520/40282





    文章评论
 
2007-08-30 22:44:12
已阅
学习

 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: