HttpService远程校验

今天学了下HttpService,和大家分享一下。HttpService是用来读取远程数据的一个对象,数据格式为XML。

我做了一个登陆校验的功能,主要是通过HttpService将服务器端的用户数据得到,然后在客户端判断输入的用户名和密码是否存在。

 

主要步骤如下:

  1. 声明HttpService对象
  2. 调用HttpService对象的send()方法
  3. 使用ResultEvent.result方法得到返回数据 或者 使用HttpService.lastResult方法得到返回数据

 

程序代码:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
 3                xmlns:s="library://ns.adobe.com/flex/spark" 
 4                xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
 5                creationComplete="userpassService.send()">
 6     <fx:Declarations>
 7         <!-- 将非可视元素(例如服务、值对象)放在此处 -->
 8         <s:HTTPService id="userpassService" url="http://localhost:8080/xmltest/users.xml" result="handlerUserPassSend(event)"
 9                        resultFormat="e4x">
10         </s:HTTPService>
11     </fx:Declarations>
12     
13     <fx:Script>
14         <![CDATA[
15             import mx.controls.Alert;
16             import mx.rpc.events.ResultEvent;
17             
18             /**通过HttpService得到远程数据*/
19             private var usersArr:XMLList;
20             private function handlerUserPassSend(event:ResultEvent):void
21             {
22                 //接收返回的数据
23                 var returnObj:Object = event.result;
24                 usersArr = returnObj.users.user;
25             }
26             
27             private function handlesendButtonClick(event:Event):void
28             {
29                 if(judgeText())
30                 {
31                     for(var i:int = 0; i < usersArr.length; i++)
32                     {
33                         var usernameIn:String = usersArr[i].username;
34                         var passwordIn:String = usersArr[i].password;
35                         if(usernameIn == username && passwordIn == password)
36                         {
37                             Alert.show("用户登陆成功");
38                             return;
39                         }
40                     }
41                     
42                     Alert.show("用户不存在");
43                     return;
44                 }
45             }
46             
47             /**判断输入是否合法*/
48             private var username:String;
49             private var password:String;
50             private function judgeText():Boolean
51             {
52                 if(usernameText.text == "" || usernameText.text == null)
53                 {
54                     Alert.show("用户名不能为空");
55                     return false;
56                 }
57                 else if(passwordText.text == "" || passwordText.text == null)
58                 {
59                     Alert.show("密码不能为空");
60                     return false;
61                 }
62                 
63                 username = usernameText.text;
64                 password = passwordText.text;
65                 
66                 return true;
67             }
68         ]]>
69     </fx:Script>
70     
71     
72     <s:Panel width="40%" height="40%" horizontalCenter="0" verticalCenter="0">
73         <s:Form width="80%" height="80%">
74             <s:FormItem label="username: " fontSize="20">
75                 <s:TextInput id="usernameText"/>
76             </s:FormItem>
77             <s:FormItem label="password: " fontSize="20">
78                 <s:TextInput id="passwordText"/>
79             </s:FormItem>
80             <s:FormItem>
81                 <s:Button id="sendButton" label="login" click="handlesendButtonClick(event)"/>
82             </s:FormItem>
83         </s:Form>
84     </s:Panel>
85 </s:Application>

 第7~10行声明了一个HttpService对象,其中url属性指定的是要请求的资源路径,这里是本地tomcat服务器的xmltest/users.xml, result属性是请求资源返回后触发的方法, resultFormat属性是将返回的数据类型转换的格式,这里使用e4x格式是指将数据按XML格式读取,而不是封装成对象。

 

远程数据:(http://localhost:8080/xmltest/users.xml)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <users>
 3     <user>
 4         <username>yuan</username>
 5         <password>123</password>
 6     </user>
 7     <user>
 8         <username>quan</username>
 9         <password>589</password>
10     </user>
11 </users>

 

程序运行结果:

 

 

 

转载于:https://www.cnblogs.com/hanyuan/archive/2013/01/07/2850146.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379001.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免费开源FTP Server软件FileZilla Server

很多朋友在实际应用中都可能需要用到FTP Server类的软件&#xff0c;这类软件有很多&#xff0c;比较知名的有Serv&#xff0d;U、G6等&#xff0c;这里向大家介绍一下FileZilla Server&#xff0c;Windows平台下一款不错的FTP Server软件&#xff0c;而且是免费的、开源的。 S…

ffplay分析 (seek操作处理)

《ffplay的数据结构分析》 《ffplay分析&#xff08;从启动到读取线程的操作&#xff09;》 《ffplay分析&#xff08;视频解码线程的操作&#xff09;》 《ffplay分析&#xff08;音频解码线程的操作&#xff09;》 《ffplay 分析&#xff08;音频从Frame(解码后)队列取数据到…

android 代码设置 键盘适应_硬核软件,能在电脑上控制iPhone和Android手机

在电脑上控制手机大概已经不是什么新鲜操作&#xff0c;小米、华为都为自家手机和电脑的联动推出了同屏操作之类的功能&#xff0c;此外也可以通过开源软件Scrcpy来在Windows或者macOS上实现对安卓手机的控制&#xff0c;这些基本都只针对安卓手机。近期&#xff0c;奇客君发现…

ijkplayer 消息循环处理过程分析

ijkplayer 消息循环处理过程分析简介一、消息队列初始化1、 initWithContentURLString函数2、 ijkmp_ios_create函数3、 ijkmp_create函数二、消息队列的消息循环处理函数启动1、prepareToPlay函数2、ijkmp_prepare_async函数3、ijkmp_prepare_async_l函数4、ijkmp_msg_loop函数…

json解析对应的value为null_徒手撸一个JSON解析器

Java大联盟致力于最高效的Java学习关注作者 | 田小波cnblogs.com/nullllun/p/8358146.html1、背景JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。相对于另一种数据交换格式 XML&#xff0c;JSON 有着诸多优点。比如易读性更好&#xff0c;占用空间更少等。在 …

平院Python习题

在读写文件之前&#xff0c;用于创建文件对象的函数是&#xff08; A &#xff09;。 A&#xff0e; open B&#xff0e; create C&#xff0e; file D&#xff0e;folder 解析&#xff1a; open(file, mode‘r’, buffering-1, encodingNone, errorsNone, newlineNone, close…

搭建srs服务器(rtmp)

搭建srs服务器&#xff08;rtmp&#xff09; 目录:1、下载srs源码&#xff08;从码云上&#xff09;&#xff1a;2、 切换到srs.oschina&#xff1a;3、 这里使用3.0版本&#xff1a;4、 切换到trunk&#xff1a;5、 编译&#xff1a;6、 启动&#xff1a;7、查看日志输出&…

2560介绍_炒股高手收益翻10倍,只因妙用这一招2560战法,看了都不亏了

(本文由公众号越声研究(yslc927yj)整理&#xff0c;仅供参考&#xff0c;不构成操作建议。如自行操作&#xff0c;注意仓位控制和风险自负。)选股是每个刚入市的新股民需掌握的技巧&#xff0c;通过资金选股了解资金流向&#xff0c;善用工具轻松选股&#xff0c;同时多留意行业…

rtmp协议分析(三次握手)

RTMP详细分析(Message 消息&#xff0c;Chunk分块) librtmp分析&#xff08;发送数据包处理&#xff09; librtmp分析&#xff08;接收数据包处理&#xff09; RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写&#xff0c;它是由Adobe公司提出的一种应 用层的协…

合并文件夹中子目录_01 Linux之统计文件夹中文件个数以及目录个数

案例分析&#xff1a;今天遇到了一个需要统计路径下目录个数的问题如果一个一个的去数会很麻烦&#xff0c;找到了一篇文章刚好提到这个&#xff0c;于是我将方法整理了一下。该方法的链接&#xff1a;Linux统计文件夹中文件个数以及目录个数_SG匚hang的博客-CSDN博客_linux统计…

关于Makefile,Makefile.in,Makefile.am,Configure功能及相互关系的问题

目录makefile写法1. 简介2. 上路之前3. 一个简单的例子4.说明&#xff1a;4.1、autoscan4.2、 configure.scan4.3、aclocal4.4、autoconf4.5、Makefile.am4.6、 automake4.7、Makefilemakefile写法 在 Unix 上写程式的人大概都碰过 Makefile&#xff0c;尤其是用 C 来开发程式…

西安理工大学863(转载)

原创&#xff1a;https://blog.csdn.net/mzj15101229871/article/details/107613162 &#xff08;博主总结的很完整&#xff0c;很厉害&#xff0c;本人为了查看方便&#xff0c;才转载的。本人只是个小白~&#xff09; 第一章 绪论 考试大纲 1&#xff09;了解数据元素、数…

原理简介_消息通信的利器MQTT协议简介及协议原理

- 没用过但是必须得知道系列 -前言&#xff1a;相比于 XMPP&#xff0c; MQTT 的简单轻量受到了不少工程师的喜爱&#xff0c;从物联网到传统的消息服务&#xff0c;简单可依赖的 MQTT 到底为何让人如此着迷呢&#xff1f;MQTT 协议&#xff0d;MQTT 协议简介及协议原理MQTT(Me…

rtmp协议分析(Message 消息,Chunk分块)

RTMP详细分析&#xff08;三次握手&#xff09; librtmp分析&#xff08;发送数据包处理&#xff09; librtmp分析&#xff08;接收数据包处理&#xff09; 目录1、Message(消息)2、Chunking(Message 分块)2.1、 Basic Header(基本的头信息)2.1.1、Basic Header为1个字节时2.1.…

将Sharepoint Server 2010部署到WINDOWS 7

首先祝CNBLOGS上的筒子们新年快乐。Sharepoint 2010 BETA版发布已经有段时间了&#xff0c;总是感觉MS的步伐要比我们这些追逐他的人快很多&#xff0c;不过确实他的每一次革新总给我们带来了惊喜。 前几天报名参加了SHAREPOINT 2010 DAY 活动(详情)&#xff0c;等待着1月16日体…

嵌入式实训-day1

完全复制一个文件的内容到另外一个文件 思路解析&#xff1a; 首先我这里使用了三个.c文件&#xff0c;分别是&#xff1a;yanyu.c、yanyu_old.c、yanyu_now.c 其中yanyu.c负责将yanyu_old.c中的内容读入到buff缓冲区中&#xff0c;然后再从buff缓冲区中将数据写入到yanyu_no…

计量经济学建模_浅谈统计学模型(兼计量经济学模型)

计量经济学模型是从统计学模型中衍生出来的&#xff0c;故将它们一并放在此处进行说明。实际上&#xff0c;很多人在很久之前就督促我写一篇统计学和计量经济学模型的文章&#xff0c;但我太懒惰&#xff0c;一直拖到现在&#xff0c;也是十分汗颜。先讲一些统计学上的基础故事…

linux文件存储、inode、硬链接、软链接

目录介绍inode的内容inode的大小inode号码目录文件硬链接软链接介绍 文件储存在硬盘上&#xff0c;硬盘的最小存储单位叫做"扇区"&#xff08;Sector&#xff09;。每个扇区储存512字节&#xff08;相当于0.5KB&#xff09;。操作系统读取硬盘的时候&#xff0c;不会…

工具栏的打印图标不见了_显示屏下方的工具栏里的小图标不见了怎么弄回来

优质回答 回答者&#xff1a;昂天大笑出门去一般右下角那些小图标都是与系统同步启动的一些功能&#xff0c;有的是没必要让它们同步启动的&#xff0c;启动的东西越多&#xff0c;系统反应就越慢。你说的工具栏里的小图标没了&#xff0c;可能是那些工具不能和系统同步启动了&…

使用sshfs挂载linux远程服务器目录到windows

目录下载winfsp 和 sshfs-win使用方式1、添加连接2、连接3、其他操作修改&#xff1a;删除&#xff1a;下载winfsp 和 sshfs-win 前往 github 对应项目的 release 中下载最新版本&#xff1a; sshfs-win&#xff1a;https://github.com/billziss-gh/sshfs-win/releases winfs…