• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH AS 编程>flash和WEB程序应用>文章内容
  • 使用crossdomain.xml让Flash可以跨域传输数据
  • 来源:THE EYE OF RIA 作者:THE EYE OF RIA 2008-03-10 【

一、概述

位于www.mzwu.com域中的SWF文件要访问www.163.com的文件时,SWF首先会检查163服务器目录下是否有 crossdomain.xml文件,如果没有,则访问不成功;若crossdomain.xml文件存在,且里边设置了允许www.mzwu.com域 访问,那么通信正常。所以要使Flash可以跨域传输数据,其关键就是crossdomain.xml。

二、crossdomain.xml文件格式

crossdomain.xml的格式非常简单,其根节点为<cross-domain-policy> ,其下包含一个或多个<allow-access-from>节点,<allow-access-from>有一个属性 domain,其值为允许访问的域,可以是确切的 IP 地址、一个确切的域或一个通配符域(任何域)。下边是两个例子:

程序代码 程序代码

<?xml version=”1.0″?>
<cross-domain-policy>
<allow-access-from domain=”www.friendOfFoo.com” />
<allow-access-from domain=”*.foo.com” />
<allow-access-from domain=”105.216.0.40″ />
</cross-domain-policy>

程序代码 程序代码

<?xml version=”1.0″?>
<cross-domain-policy>
<allow-access-from domain=”*” />
</cross-domain-policy>

第二个例子允许任何域的访问。对于crossdomain.xml文件存放位置,建议将其存放于站点根目录中!

三、示例

1.SWF文件主要ActionScript:

程序代码 程序代码

on (release) {
var myvar = new LoadVars();
myvar.t = t2.text;
myvar.sendAndLoad(”http://www.163.com/test.asp“,myvar,”post”);
myvar.onLoad = function(re){
if(re){
t1.text = myvar.t;
}else{
t1.text = “fail…”;
}
}
}
2.test.asp代码:

程序代码 程序代码

<%
Dim t
t = Request.form(”t”)
Response.write(”t=” & t & ” back!”)
%>





上一篇:FLAHS+ASP扫描文件夹展示图片,自由添加   下一篇:关于XML在FLASH交互应用中的理解
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)