flash中通过XMLSocket监控生产系统(2-3)

2016-02-19 20:39 7 1 收藏

今天图老师小编给大家介绍下flash中通过XMLSocket监控生产系统(2-3),平时喜欢flash中通过XMLSocket监控生产系统(2-3)的朋友赶紧收藏起来吧!记得点赞哦~

【 tulaoshi.com - Web开发 】

  4) 当连接建立成功之后,客户端与服务端就可以相互发送XML数据了。使用XMLSocket 对象的send方法向服务端发送数据:

mySocket.send(myXML);

  其中,myXML是一个包含XML数据的XML对象,send方法先把myXML转化为字符串,然后将该字符串发送到服务端,并在字符串发送后,追加发送一个0字节。send方法没有返回值。

  以下示例中,先生成一个空的XML对象myXML,然后在myXML中添加了一个元素节点myLogin,该节点包含两个属性username和password,send方法把myXML转化成字符串 后,发送给服务端,当然还要追加发送一个0字节,以表示一条XML数据的完成:

var myXML = new XML();
var myLogin = myXML.createElement("login");

myLogin.attributes.username = "morgan";
myLogin.attributes.password = "loveme";
myXML.appendChild(myLogin);

mySocket.send(myXML);

  当有数据到达(收到一条以0字节为结尾的字符串)时,首先将触发onData事件,相应的事件处理函数myOnData带有一个参数,表示当时到达的数据字符串,但不包含0字节,如下例中,服务端传来一个字符串 “I am Morgan Yang !”,加上一个0字节,以下语句将把myTextField(为一非静态文字TextField对象的实例)的内容设为“I am Morgan Yang !”,我们注意到这里发送的数据,可以是包括XML格式在内的任何形式:

function myOnData(src) {
myTextField.text = src ;
}

  对于onData事件,如果没有相应的事件处理函数,默认将触发onXML事件,形式如下:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

XMLSocket.prototype.onData = function (src) {
this.onXML(new XML(src));
}

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  即在onXML事件中,使用onData事件中得到的数据生成一个XML对象,并把该对象作为参数传给onXML事件的处理函数,所以如果要自定义onXML事件的处理函数,服务端发送来的数据就必须是XML格式,否则就会发生意想不到的错误。如果设置了onData事件的处理函数,当数据到达时,将不再调用onXML事件的处理函数,除非在显式地调用,所以在某种意义上,两种事件是互斥的。

  在没设置onData事件处理函数,又设置了onXML事件处理函数情况下,当有XML数据 到达时,以下语句将把两个非静态文字实例nameTextField和passwordTextField的内容分别设为“Morgan”和“loveme”:

function myOnXML(doc) {

var e = doc.firstChild;

if (e != null && e.nodeName == " login ") {

nameTextField.text = e.attributes.username ;
passwordTextField.text = e.attributes.password ;
}
}

  5) 最后,在程序结束的时侯,使用XMLSocket 对象的close方法,关闭Socket连接,如下:

mySocket.close();

  需要注意的是,使用XMLSocket 对象的close方法,来关闭Socket连接不触发XMLSocket对象的onClose事件,只有当Socket连接被服务端关闭时,才在Flash应用客户端触发该事件,默认情况下,XMLSocket 对象的onClose事件处理函数不执行任何动作,可以自定义该事件处理函数,以达到特定目的。如以下语句,在onClose事件发生时,把myTextField(为一非静态文字实例)的内容设为 “Socket Closed By Server !”

function myOnClose() {
myTextField .text = "Socket Closed By Server !" ;
}

来源:http://www.tulaoshi.com/n/20160219/1624219.html

延伸阅读
标签: Web开发
4) 选中 UI层,在工具箱选中文本工具,并在属性检查器中设置属性Show Border Around Text为真、文本类型为Dynamic Text(动态文本)、文本为Multiline(多行),在Stage (舞台)上半部分画一个大的文本区域,把其实例名设为 txt。如图三,现在注意到,txt文本域具有了边框和白色背景,我个人不太喜欢白色,能不能改变文本域的背景色呢? 当然...
标签: Web开发
一、背景 Flash现在已经成为制作高压缩、基于矢量的网络内容的行业标准,据统计有98.3%的网站用户使用 Macromedia Flash Player,也就是说全球有超过四亿一千四百万的网络用户通过Macromedia Flash Player无缝观看用Macromedia Flash制作的内容。 然而,Flash的发展没有停止,随着Flash新版本(Flash MX和Flash Player 6.0)的发...
标签: 母婴保健
2-3岁宝宝喂养误区:误区一:包子油条做早餐;误区二:严格限制孩子的零食;误区三:简单粗暴的拒绝孩子一些饮食要求;误区四:对肥胖的孩子饮食上不管不顾;误区五:用米饭拌菜汤吃。 2-3岁宝宝喂养误区:2-3岁新生儿喂养误区 2-3岁宝宝喂养误区: 误区一:包子油条做早餐 中国人的早餐是习惯于油条加豆酱或者粥加包子,这...
标签: 瑜伽 养生 健康
健康是女人享有宁静生活、顺利生产并拥有健康宝宝的基本因素。一个健康的女人比一个体质虚弱的女人更能经受住阵痛期和分娩期的极度紧张,并有较好的恢复能力。在印度,许多孕产妇都会学习、修炼系统的瑜伽。因为孕妇瑜伽能给予她们许多帮助,使她们在精神上和身体上做好迎接小宝宝的准备。 瑜伽认为,健康的范畴包括身体和精神两个层...
标签: 孩子
家教指导:五招对付顽童 没有人否定,2-3岁的孩子最好玩,因为他们开始会走会跑,半懂不懂,手脚不停,常常闹出很多逗大人开心的事情,也常常让父母措手不及、无法控制,再怎样不停地叫“不”都是无济于事。英国儿童心理学家理查德沃夫森表示:“孩子从出生的那一刻开始就想探究世界,学习更多、发现更多,而且从2-3岁起就开始有独立意识。这...

经验教程

768

收藏

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