flash与ASP通信的几种方法

2016-01-29 13:26 6 1 收藏

flash与ASP通信的几种方法,flash与ASP通信的几种方法

【 tulaoshi.com - Flash 】

一个例子简单的描述了如何通过GET方法向服务器端的ASP发送请求:

_root. pushAction = function(URL) {
this.loadVariables(URL, "GET");
}
var ask = true;
var pushURL = "http://localhost/test/return.asp?ask="+ ask;
pushAction (pushURL);
_root.onEnterFrame = fuction(){
               trace(_root.output);
}
    这里首先定义了一个名为pushAction的函数,在loadVariables函数中使用了GET参数。然后定义了一个名为ask的布尔型变量,用来向服务器传递变量。最后使用pushAction函数向服务器上的一个名为return的ASP页面发送GET请求。如果需要对这样的请求作出处理,在ASP中,URL行的分析结果存在于Request对象中,比如下例:
return.asp

< %@ Language="JScript" %
< %
//声明并定义接受请求的变量
var str_getask= Request.QueryString("ask");
//声明并定义返回信息变量
var str_Msg = "Sorry! Your request tread awry.";
//如果接受到的变量为true,则返回成功消息
if (str_getask == "true"){
  str_Msg = "OK! Your request succeed!";
}
Response.write("output=" + str_Msg);
%
    这样,一个名字为output,值为str_Msg的变量就发送回Flash Player中,可以在flash中以output的名字引用这个变量。当然我们必须注意服务器在处理这个过程中是需要时间的,因此最后那个onEnterFrame用来测试是否有变量返回.

二、使用LoadVars

loadVariables提供了一种简单的方法让我们可以从服务器端的ASP或者PHP页面载入变量,除了使用GET方法,它还可以使用POST方法将客户端提交的数据传递给服务器。然而在处理大量客户端与服务器端交互的信息时,使用过多的loadVariables语句会让整个程序的维护性和可读性变得复杂。在Flash MX的Action中,新增加了一个LoadVars的对象,并将它和XML,XMLSocket对象一起归纳于Client/Server对象之下。LoadVars 对象是 loadVariables 动作的替代方法,它能够提供一种更好的结构向服务器发送和返回信息。一个典型的LoadVars对象使用的例子如下:
//构造一个新的LoadVars对象
myload = new LoadVars();
//设定myload的动作,以便服务器验证
myload.action = "post";
//验证和服务器连接的函数
myload.onLoad = function(success) {
//如果和服务器成功连接则…
if (success) {
//如果验证动作成功则…
  if (this.conn == "1") {
         //将返回对象中的output变量赋值给场景中var为output的Dynamic Text框
   _root.output = this.output;
  }
} else {
        //如果和服务器连接不成功则返回失败消息,需要检查路径是否正确
  _root.output = "Can’t connect to Server";
}
};
//Dynamic Text的初始值为一个等待消息
_root.output = "Waiting for response...";
//将myload下的变量发送到服务器端,并将服务器返回的数据结果放在myload对象中
myload.sendAndLoad("http://localhost/test/return.asp", myload, "post");
//myload.sendAndLoad("http://localhost:8001/test/return.php",myload, "post");    在场景中以一个var名为output的Dynamic Text框来接受来自服务器的消息。使用LoadVars,我们可以利用sendAndLoad方法将一个LoadVars的实体下的所有变量发送出去,并将服务器返回的数据结果存储到一个目标对象中,其中conn,output都是从服务器发送回来的,我们还利用了其onLoad事件函数来检验其是否将信息发送到了服务器页面,再利用从服务器传回来的数据(this.conn)来验证信息是否正确。服务器页面的代码如下:
ASP return.asp:
< %@Language="JScript"%
< %
var str_Msg;
var action;
var conn;
action = Request.Form("action");
if (action == "post"){
    str_Msg = "OK! return a Msg to you!";
    conn = 1;
}
Response.write("conn=" + conn + "&output=" + str_Msg);
%
PHP return.php:


< php
$action = $HTTP_POST_VARS["action"];
if ($action == "post") {
    $str_Msg = "OK! return a Msg to you!";
    $conn = 1;
}
echo "conn=" . $conn . "&output=" . $str_Msg;
?;    如果本例执行成功,则会在Flash Player中出现成功画面,如图所示。如果失败,则返回失败

来源:http://www.tulaoshi.com/n/20160129/1490195.html

延伸阅读
标签: 妊娠纹 孕前
孕早期 5样事情必须做 怀孕开始到第3个月称为妊娠早期。此时,随着孕妇体形的变化,身体负担增大,孕妇心理上会产生羞怯感、不安感和母性意识的萌芽。并且随着妊娠反应的出现,孕妇会出现情绪烦躁和厌恶感。为了宝宝的健康,准妈妈必须谨记5样事情! 妊娠早期是胎儿发育和各器官形成时期,同时是致畸的危险期,更是胎儿最不稳定、易于流产...
标签: 预防
如何从饮食上预防小儿感冒     1、可多吃葱白、生姜、菊花等 食品 。     2、多饮新鲜果汁,如:西瓜水、苹果(苹果食品)汁,同时也要多饮开水,能防伤津。     3、饮食宜清淡、易消化(消化食品),高热能、高维生素,宜吃流质或半流质 食物 ,如小米粥、百合粥、豆...
标签: 优生优育
tulaoshi 男人如何提高精子质量 在这样一个竞争激烈的的社会, 男性 压力巨大,再加上无休止的加班以及各种污染与辐射, 精子 质量降低已经在意料之中了。那么,男性应当如何提高精子质量呢? 一、作息规律,适度 锻炼 科学家发现,作息规律的男性精子质量明显高于生活节奏混乱的男性。因此,想要...
在图像调整过程中,我们经常会遇到将图像调整成灰色调图像,那么将RGB图像调整成灰度图像都有哪些方法呢?带着这个问题,我们把Photoshop中常用的,可以将RGB图像调整成灰度图像的方法列出来,供大家参考。 原图 一Tulaoshi.com、各种调整方法及调整结果 方法一 、用图像调整通道混合器 命令,在通道混色器对话框...
白领抗疲劳的几种方法 大多数白领的生活都是比较有规律的,多数是朝九晚五,经常是在办公室一坐就是一整天。然而因为白领工作稳定,欠缺必要的运动,因此容易导致疲劳继而影响身体健康。那白领上班族该怎样养生抗疲劳呢? 1、饮食平衡是关键 平衡的饮食肯定是多样化的,这样才可以避免营养不良引起的身体虚弱。以下规则...

经验教程

908

收藏

56
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部