【教程】【FLEX】#002 请求服务端数据(UrlLoader)

为什么Flex需要请求服务端读取数据,而不是自己读取?

Flex 是一门界面语言,主要是做界面展示的,它能实现很多绚丽的效果,这个是传统Web项目部能比的。 但是它对数据库和文件的读写 没有良好的支持。

既然Flex没有对数据库和读写文件有良好的支持,那么读数据数据,和读写文件,可以用C#或者Java来编写,然后Flex请求 用C#或者Java写好的接口。



Flex请求服务端接口的方法有很多种,这边我就讲解如何使用UrlLoader来请求接口。

请求服务端接口的步骤:

1、创建UrlRequest对象,设置请求的URL,Method的类型(POST,GET),以及请求传递的参数

2、创建UrlLoader对象去请求接口。 (记得把UrlRequest传入UrlLoader的Load方法里)

3、对返回的数据进行处理

代码例子(代码片段):

//请求服务端的方法(UrlLoader)

protected function mytree_creationCompleteHandler(event:FlexEvent):void

{

//1、创建UrlRequest对象,设置请求的URL和Method类型(Get,Post)、请求的参数(data)

   var urlRequest:URLRequest=new URLRequest();

   urlRequest.url="http://192.168.116.64:9986/Manage/ComponentManage/AjaxHandler/F_ElementToXML.ashx?type=getElement";

   urlRequest.method = URLRequestMethod.POST;

   var param:URLVariables = new URLVariables();

   param.name = "zhongxia";

   param.age = "20";

//2、创建UrlLoader,并把urlRequest对象赋值给UrlLoader的Load方法,并且注册事件

   var ul:URLLoader=new URLLoader();

   ul.load(urlRequest);

   ul.addEventListener(Event.COMPLETE,handler);

}

//UrlLoader请求完成的处理

private function handler(e:Event):void

{

 //3、把数据读出来(数据保存在事件对象e里面),做想要执行的操作

   var jsonString:String=e.target.data as String;

 //下面是对数据的操作

   var json:Object = com.adobe.serialization.json.JSON.decode(jsonString);

   var arr:ArrayCollection=new ArrayCollection(json as Array)

   mytree.dataProvider=arr;

}
时间: 2024-12-08 22:54:47

【教程】【FLEX】#002 请求服务端数据(UrlLoader)的相关文章

android菜鸟学习笔记24----与服务器端交互(一)使用HttpURLConnection和HttpClient请求服务端数据

主要是基于HTTP协议与服务端进行交互. 涉及到的类和接口有:URL.HttpURLConnection.HttpClient等 URL: 使用一个String类型的url构造一个URL对象,如: URL url = new URL(http://10.0.2.2/index.php); openConnection()方法返回一个对指定url的资源的连接.返回类型是URLConnection,但是,由于这里我们一般用的是http协议,所以返回的实际是HttpURLConnection对象,故一

android菜鸟学习笔记25----与服务器端交互(二)解析服务端返回的json数据及使用一个开源组件请求服务端数据

补充:关于PHP服务端可能出现的问题: 如果你刚好也像我一样,用php实现的服务端程序,采用的是apache服务器,那么虚拟主机的配置可能会影响到android应用的调试!! 在android应用中访问的IP都是10.0.2.2,如果在apache虚拟主机配置文件中配置了多个虚拟主机,那么将默认解析为对第一个虚拟主机的请求,所以,在调试android应用时,应该将对应的服务端所配置的那个虚拟主机放在配置文件中的第一个虚拟主机的位置.否则就会出现请求的文件不存在等的错误. 服务端返回JSON数据及

网站的优化----首页优化---app调取服务端数据

高并发经常会发生在有大活跃用户量来访问网站的某个点,例如用户高聚集的业务场景中,如:抢购,促销等.为了让用户流畅的访问网站,来根据自己的业务设计适合系统的处理方案. //对于APP网站首页数据,通常是有APP请求服务端数据在本机进行绘制.APP越少的请求服务端的,就会减少服务器压力:资源和带宽. 1.服务端给APP下发的数据越少,减少无用字段的下发.就是APP需要什么,服务端下发什么. 2.APP每次请求服务端数据,服务端下发最新数据和数据版本号,APP可以缓存到本地,每次接口请求数据的时候,上

python的flex服务端数据接口开发

python的flex服务端数据接口开发 python 如果给flex提供服务端,需要提供一个网关和一个可供客户端(flex)调用的类.这方面我更加推荐用twisted来写这个网关,因为twisted有很好的异步机制. 下面的我写的一个简单的验证用户的python服务端: ______________________________DBServer.py # Copyright (c) 2009-2010 The Newjh Project."""@author: Roy@s

LigerUI中通过加载服务端数据进行表格的分页显示

前言:我的这一篇文章是紧接着上一篇关于LigerUI的文章(http://www.zifangsky.cn/379.html)写的,因此在这里我就省略了相关的环境搭建,直接进入正题 一 介绍 在LigerUI中显示表格是用的ligerGrid,同时我们可以通过配置url参数就可以加载远程数据并显示成表格形式.不仅如此,ligerGrid还可以进行数据的排序和分页显示: (1)排序:需要用到"sortname"和"sortorder"这两个参数,分别表示按哪个字段排序

防止tab页反复的去请求服务端

直接看图吧. 左边是企业树,右边是根据企业变化的一个tab页 实现功能:1.我们希望如果选中的企业不变,我们在切换旁边五个tab页的时候,只是第一次进去的时候请求服务器端.下面来回切换tab页都不请求服务器端(前提企业树不切换). 2. 如果选中的企业变化,相应的 右边的表结构也要跟着相应的变化. 思路.1.企业树不切换的时候,每点击一次tab 页我们给他一个标识,该标识,去判断如果企业树不变来回切换我们不请求服务端.如下 $("#tab-director").click(functi

防止tab页重复的去请求服务端

直接看图吧. 左边是企业树,右边是依据企业变化的一个tab页 实现功能:1.我们希望假设选中的企业不变,我们在切换旁边五个tab页的时候,仅仅是第一次进去的时候请求server端.以下来回切换tab页都不请求server端(前提企业树不切换). 2. 假设选中的企业变化,对应的 右边的表结构也要跟着对应的变化. 思路.1.企业树不切换的时候,每点击一次tab 页我们给他一个标识,该标识,去推断假设企业树不变来回切换我们不请求服务端.例如以下 $("#tab-director").cli

Flex通信-Java服务端通信实例

Flex与Java通信的方式有很多种,比较常用的有以下方式: WebService:一种跨语言的在线服务,只要用特定语言写好并部署到服务器,其它语言就可以调用 HttpService:通过http请求的形式访问服务器 RmoteObject:通过AMF协议,以二进制的形式交互数据 Socket:套接字协议,服务器和客户端以IO的形式交互数据 上面几种各有个的优势:WebService常用于跨语言调用,不过解析协议需要花不少时间,运行速度不快:HttpService类似于Ajax:通常RmoteO

struts2(三)---struts2中的服务端数据验证框架validate

struts2为我们提供了一个很好的数据验证框架–validate,该框架可以很方便的实现服务端的数据验证. ActionSupport类提供了一个validate()方法,当我们需要在某一个action中进行数据验证时,可以重写这个方法.数据验证往往是在客户端向服务端提交表单信息时进行的,比如execute方法负责处理表单信息并返回相应的结果,在此之前,validate会先对提交的表单信息进行验证: ->验证通过:会执行execute的相应操作. ->验证失败: –>定义了失败后的re