- 2
- 0
- 约1.31万字
- 约 18页
- 2017-02-05 发布于北京
- 举报
Flαsh聊天室的实现
【加入收藏】 【字体:大?中?小】 【关闭页面】
使用LoadVars类代替loadVariables()函数
论坛上经常有朋友用loadVariables(),出现不明白的情况;说是在话,我也弄得不明白,不明白干脆不用了,看许多前辈的调用外部文件的源文件都没用到这个函数,自己也跟着学学。现在我们就来用LoadVars()类代替loadVariables()函数。
在这之前先看一段Flash帮助的话:
LoadVars 类是 loadVariables() 函数的替代方法,用于在 Flash 应用程序和服务器之间传输变量。
您可以使用 LoadVars 类在下载时获取成功数据加载、进度指示和流数据的验证信息。LoadVars 类的工作原理非常类似于 XML 类;它使用方法 load()、send() 和 sendAndLoad() 与服务器进行通讯。LoadVars 类和 XML 类之间的主要差别在于 LoadVars 传输动作脚本的名称和值对,而不是 XML 对象中存储的 XML DOM 树。
LoadVars 类与 XML 类遵循相同的安全限制。
很明显,LoadVars类的功能很强大。接下来我们开始吧?
var my_lv = new Loadvars();//这样我们就创建一个名为 my_lv 的 LoadVars 的对象然后使用my_lv.load(url);来调用外部的文件比如:my_lv.laod(msg.txt)//不光能调用txt文件,也可以调用其它格式的,如ASP,PHP,JSP等文件
接下来使用my_lv.onLoad函数来处理调用,具体格式为:my_lv.onLoad = function(success) {? // 此处是您的语句}//操作结束时调用。如果该操作成功,my_lv 将填充为该操作所下载的变量,而这些变量将在调用此处理函数时变为可用。例如:
my_lv.onLoad = function(success){if(success){trace(my_lv.msg);//在这里设定msg.txt文件里有个msg变量存在}}
具体例子://msg.txt 的内容msg=使用LoadVars类代替loadVariables()函数
//fla文件新建fla文件,在第一帧上写下如下代码:System.useCodepage = true;//保证中文能被识别,不出现乱码var my_lv = new Loadvars();my_lv.laod(msg.txt)//my_lv.onLoad = function(success){if(success){trace(my_lv.msg);}}
Flash 的功能已经非常强大,完全可以跟其他的服务器端语言结合起来,做出适合现在的网络应用的网站。一个典型的模式就是Flash 与Asp的结合使用。其架构如图1所示。 图1 可以把上面的结构看成是三层,Flash是一层,Asp是一层,数据库是一层。对Flash和Asp有点了解的人,只要处理好层与层之间的交互,结合使用Flash与Asp就决不是什么难事。 一、下面我们就先来看看Flash与Asp之间的交互 Flash与Asp的通讯是用Http协议,其请求格式为http://ip地址?参数1=值1参数2=值2 即是在目的地址后面加上问号,再跟上参数字符串,参数之间用“”号格开。如: /test.asp?userid=guestpwd=123 在上面的请求中,请求的目的文件为:/test.asp,第一个参数名为userid,值为guest,第二个参数名为pwd,值为123。 Flash与Asp之间的交互无非就是构造上面的请求字符串。 1、在Flash中,先构造好请求的字符串,然后利用函数LoadVariables(),就可以向服务器端发送请求和参数。我们来详细看看LoadVariables()这个函数。 函数的标准格式为loadVariables (url ,level/target [, variables]) 在函数的各个参数中,url就是上面说的请求字符串。level/“target”是返回值的“层次”或者“目标”,这两个当中只能指定一个。variables是请求的方式,其值可以是“Get”或者是“Post”,一般Get用于参数值比较短的传送,Post用于参数值比较长的传送,这个参数是可选的。比如loadVariables (/guest.asp?userid=guestpwd=123 ,0, “GET”)就是一个完整的请求。 2、在Asp中,先要取得从Flash端传送过来的参数,这跟操作普通的HTML
原创力文档

文档评论(0)