flash与asp、asp.net、jsp、php、cfm通信
时间:2010-11-27
来源:互联网
从Flash Player 6开始,我们就可以使用LoadVars对象来实现Flash与后台的通信。同loadVariables函数一样,它只能接收MIME格式的字符串变量。而且遇到特殊字符时,必须进行URL编码。
LoadVars对象通过其sendAndLoad方法将对象中的属性变量发送(send)到指定的 URL,同时载入(load)服务端器的输出变量并将其放入目标对象中。当然,发送和载入这两个过程可以分开进行。这就是LoadVars对象比loadVariables函数强大之处,另外一个强大之处在于:载入变量时,还可以通过LoadVars对象的onLoad事件来判断载入的结果是成功还是失败。请看下面的例子。
请在舞台上添加名为 name_ti 的 TextInput 实例,名为 msg_ta,result_ta 的 TextArea 实例和名为 send_btn 的 Button 实例。将下面的 ActionScript 添加到时间轴的第 1 帧:
submitListener.click = function(evt:Object) {
var result_lv:LoadVars = new LoadVars();
var send_lv:LoadVars = new LoadVars();
send_lv.userName = name_ti.text;
send_lv.msg = msg_ta.text;
send_lv.sendAndLoad(http://localhost/LoadVarsSample/echo.aspx, result_lv, "POST");
result_lv.onLoad = function(success:Boolean) {
if (success) {
result_ta.text = result_lv.resultVar;
} else {
result_ta.text = "连接到服务器失败";
}
}
}
send_btn.addEventListener("click", submitListener);
说明:当用户单击下面示例中的 Login 按钮实例时,将创建两个 LoadVars 对象:send_lv 和 result_lv。send_lv 对象从 name_ti 和msg_ta实例复制名称并将数据发送到 echo.aspx。此脚本的结果将载入 result_lv 对象,服务器响应则显示在 TextArea 实例 (result_ta) 中。
前面说过,任何服务器端编程语言,只要按[变量/值]配对的格式输出纯文本文件就能和Flash连接。接下来我们就来看这个实例的服务器端代码。
ASP版:
<%
Dim userName,msg
userName = Request.Form("userName")
msg = Request.Form("msg")
Response.Write "resultVar="&userName&"说:"&msg
%>
ASP.net版:
<%
string userName,msg;
userName = Request.Form["userName"].ToString();
msg = Request.Form["msg"].ToString();
Response.Write("resultVar="+userName+"说:"+msg);
%>
PHP版:
$userName=$_POST['userName'];
$msg=$_POST['msg'];
echo "resultVar=".$userName."说:".$msg
?>
CFM版:
<cfparam name="msg" default="" type="any">
<cfoutput>resultVar=#userName#说:#msg#</cfoutput>
JSP版:
上面的例子只举了从服务器端返回一个数据的方法,如果你需要一次返回多个数据这也很简单,只需要在多个返回数据之间用&隔开就好了!例如在ASPX中:Response.Write("resultVar01="+userName01+"&resultVar02="+userName02);在Flash端取数据的时候也很简单按照服务器端的名称依次取出就好了,还是拿上面的这个例子来说,取的时候就是:result_lv.resultVar01和result_lv.resultVar02了!!
你可能也注意到了,几乎没有改动Flash的代码,只是改动后台语言而已。可以看出用Flash作表示层的程序是具有很强的移植性的,这也是RIA的一大特点。
作者: 我不是鱼 发布时间: 2010-11-27
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28