sendAndLoad和Redirect的测试as

所属分类: 网页制作 / Flash 阅读数: 1741
收藏 0 赞 0 分享
今天我们来测试下当SWF文件将参数以POST方式传给s1.asp,而s1.asp中有Redirect方法转到s2.asp,s2.asp有Redirect方法转到s3.asp时,SWF返回的是由哪个文件产生的值?

1.测试过程

ActionScript:
 程序代码
on (release) {
    var myvar = new LoadVars();
    myvar.s = "mzwu";
    myvar.sendAndLoad("s1.asp",myvar,"post");
    myvar.onLoad = function(re){
        if(re){
            t2.text = myvar.url;
        }else{
            t2.text = "加载失败!";
        }
    }
}
s1.asp:
 程序代码
<%
Response.Redirect("s2.asp?s=" & Request.Form("s"))
Response.Write("url=" & Request.ServerVariables("URL"))
%>
s2.asp:
 程序代码
<%
Response.Redirect("s3.asp?s=" & Request.QueryString("s") & " back")
Response.Write("url=" & Request.ServerVariables("URL"))
%>
s3.asp:
 程序代码
<%
Response.Write("url=" & Request.ServerVariables("URL") & " " & Request.QueryString("s"))
%>

SWF中可以看到返回的结果为“/s3.asp mzwu back”,很明显,这个结果是由s3.asp产生的。那我们就可以得出结论:当多个页面中存在Redirect时,SWF返回的将是最终页面产生的值!

2.无需crossdomain.xml的跨域访问

众所周知,SWF要进行跨域访问时,除了发布成EXE格式,就只能在受访服务器上布署crossdomain.xml文件了,但实际上多数情况是我们需要将Flash文件插入到页面中(只能是SWF格式)进行跨域访问,并且受访域我们没有操作权限(无法布署crossdomain.xml文件)!

基于第1点的测试结果,我们可以将SWF文件、s1.asp、s3.asp布署在我们自己的服务器上,s2.asp是受访问域上的文件。我们将上边文件代码稍做修改再次进行测试:

ActionScript:
 程序代码
on (release) {
    var myvar = new LoadVars();
    myvar.s = "mzwu";
    myvar.sendAndLoad("s1.asp",myvar,"post");
    myvar.onLoad = function(re){
        if(re){
            t2.text = myvar.url;
        }else{
            t2.text = "加载失败!";
        }
    }
}
s1.asp:
 程序代码
<%
Response.Redirect("http://free.66ip.com/test07/s2.asp?s=" & Request.Form("s"))
Response.Write("url=" & Request.ServerVariables("URL"))
%>
s2.asp:
 程序代码
<%
Response.Redirect("http://www.mzwu.com/s3.asp?s=" & Request.QueryString("s") & " back")
Response.Write("url=" & Request.ServerVariables("URL"))
%>
s3.asp:
 程序代码
<%
Response.Write("url=" & Request.ServerVariables("URL") & " " & Request.QueryString("s"))
%>

结果仍是"/s3.asp mzwu back",很明显,我们通过一些方法实现了不需crossdomain.xml的跨域访问!网银在线支付的实现原理其实也就是:企业站点→在线支付接口→企业站点,那用Flash做个支付界面会很难吗?:) 
更多精彩内容其他人还在看

AS3.0 通过类来实现一个gallery

AS3.0 通过类来实现一个gallery
收藏 0 赞 0 分享

AS3脚本编写的计时器效果代码

这篇文章通过实例代码给大家接受了AS3脚本编写的计时器效果,代码简单易懂,需要的朋友参考下吧
收藏 0 赞 0 分享

土人系列AS入门教程--基础篇

土人系列AS入门教程--基础篇
收藏 0 赞 0 分享

土人系列AS入门教程--语法篇

土人系列AS入门教程--语法篇
收藏 0 赞 0 分享

土人系列AS入门教程 -- 对象篇

土人系列AS入门教程 -- 对象篇
收藏 0 赞 0 分享

土人系列AS入门教程--实战篇

土人系列AS入门教程--实战篇
收藏 0 赞 0 分享

AS3笔记(13),sendAndLoad的继承者

AS3笔记(13),sendAndLoad的继承者
收藏 0 赞 0 分享

flashas菜鸟入门教程下载第1/2页

这个教程很老了,是闪吧的 thymecd 发布的 ,由blackhill 整理成chm 图片和 swf都是全的!! 闪吧的下载已经失效了,所以我在网上找了很久总算找了一个下载地址 下面是第三章的内容 很适合刚刚接触as的朋友
收藏 0 赞 0 分享

ActionScript 3.0 编程体验

日前,Adobe公司发布了Flash的最新版本Flash Professional 9 ActionScript 3.0 Preview,这是Flash 9的预览版,正式版本估计要到2007年才会推出,
收藏 0 赞 0 分享

As3.0 xml + Loader应用代码

简单说说AS3.0中对于XML支持的不同吧: .AS2.0对XML的支持勉勉强强,将就着可以用。而AS3.0中对XML的支持是全方位的,极其强大和灵活的
收藏 0 赞 0 分享
查看更多