-
关于我
-
跟随我
-
订阅我
-
关注一下
-
最新文章
- [02/13][日记]春节快乐心想事成
- [01/28][Flex]Adobe软件在电影阿凡达中的应用
- [12/30][排名]TIOBE程式語言最新排名-2009年12月版
- [12/30][日记]2009年终岁尾的一些感想
- [12/30][讲座]艾睿网12月份Cmax北京的演讲稿
- [11/28][日记]佛山、广州之行
- [11/21][Acrobat]Acrobat.com改版(包括Mobile版本)
- [11/19][AIR]基于AIR 2.0 的几点猜测
- [11/19][Silverlight]Silverlight 4 beta released!
- [11/18]Flash Player 10.1 and AIR 2.0 消息汇总
[Flex]Flex或Flash的跨域访问的解决方案
关于Flex或Flash的跨域访问的解决方案,事情的起因是,由我公开的一个webservice(不清楚这个webservice干什么的请看这里)开始的,kenshin的朋友sensun在这个公开的webservice的基础上制作了一个weather查询的,在本机测试ok,一拿到网上,就会出现error(是跨域访问的错误),后来,kenshin终于找到了这个问题的解决方案,如下:
写一个名字为 crossdomain.xml 的XML文件,这个方法是允许任何Flash都可以调用,放到被调用文件的网站根目录下:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy
SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
只让你允许的网站来调用你的数据~.
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy
SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy> 仓qWC腋闬
<allow-access-from domain="www.yoursite.com" />
<allow-access-from domain="yoursite.com" />
<allow-access-from domain="*.k-zone.cn" />
</cross-domain-policy>
如果使用XMLSocket要把端口号加上
<cross-domain-policy>
<allow-access-from domain="*.foo.com" to-ports="507,516" />
<allow-access-from domain="*.bar.com" to-ports="516-523" />
<allow-access-from domain="www.foo.com" to-ports="507,516-523" />
<allow-access-from domain="202.117.80.2" to-ports="*" />
</cross-domain-policy>
如果安全策略文件放在根目录,文件名字必须为crossdomain.xml,如果不放在根目录,要用System.security.loadPolicyFile(http://webservice.k-zone.cn/crossdomain.xml )这样的方法加载安全策略文件。


