HTTPService用法汇总

近期一直在用HTTPService,花点时间总结了下,为自己做个备忘。

本总结围绕以下几个方面进行总结:

1,这是什么组件 2,这个组件有什么作用 3,组件有什么属性 4,什么情况下能使用该组件,以及使用实例 5,其他说明

一,这是什么组件

简而言之,就是获取数据的组件。

二,作用如下

读取远程xml文件数据

读取远程servlet数据

它对指定的URL发送请求,并且返回http响应,它可以向http传递参数,注意,这点很重要,很好用

这个组件不但可以请求数据,还可以提交数据。

另外再说两点:

1,如果没有使用基于服务器的代理服务,则只能使用 HTTP GET 或 POST 方法。
2,如果使用基于服务器的代理服务,则还可以使用 HTTP HEAD、OPTIONS、TRACE 和 DELETE 方法。

第一点我们比较熟,第二点本人也没有用过。


三,组件属性

首先务必记住一点,那就是必须调用了send方法,才会去请求数据。

1,method : 发送请求的 HTTP 方法。指post,get,delete,trace等方法。

2,resultFormat : 专业的说是如何反序列化由 HTTP 调用返回的结果的值,说白了就是返回结构格式化,是文本形式的还是xml形式(E4X),后面我回单独些一个博文说明E4x标准,很好用。

3,url : 这个不用说,就是请求的url地址。

4,request : URL 参数。这个很好用的。他是一个Object对象。

方法:

1,send 这个请求数据必须的方法

事件:

1,result:成功返回时调用

2,fault:失败返回时调用


其他属性如:useProxy,rootURL是何用途,暂时就先不说了,参照api


四,用法举例,把碰到过用到该组件的情况归纳如下

第一种情况,读取远程的xml文件数据,实例如下:

实例一,先写个简单的

功能:请求一个xml,请求返回指定元素的个数!

说明:为了测试,用我以前网上找到的在线xml文件,链接如下:

http://www.flexgrocer.com/units.xml


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
creationComplete="MyHTTPService.send()">

<mx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
import mx.controls.Alert;
import mx.collections.ArrayCollection;

[Bindable]
private var xmls:ArrayCollection=new ArrayCollection();

private function myHTTPService(event:ResultEvent):void
{
xmls=event.result.allUnits.unit;
Alert.show(xmls.length.toString());
}

]]>
</mx:Script>

<mx:HTTPService id="MyHTTPService"
url="http://www.flexgrocer.com/units.xml"
result="myHTTPService(event)"/>

</mx:Application>


第二种情况,读取远程数据,通过servlet

实例二

功能:向一个jsp请求数据,请求数据的同时附带参数

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" >
<mx:Script>
<![CDATA[
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.controls.Alert;

//发送出错时的处理函数
public function faultHander(event:FaultEvent):void
{
Alert.show("发送或者接收时出现问题!");
}

//接收到结果后处理的函数
public function resultHandler(event:ResultEvent):void
{
Alert.show("您接收到JSP网页传来的结果是:" + event.result.toString());
}

public function onSend():void
{
myhttpService.url = "http://localhost:8080/httpService/index.jsp?message=";
myhttpService.url += message.text;
myhttpService.send();
}

]]>
</mx:Script>
<mx:HTTPService id="myhttpService" useProxy="false" resultFormat="text" fault="faultHander(event)" result="resultHandler(event)"/>
<mx:Label text="发送信息:" color="#C9E412" fontWeight="bold" fontSize="16" x="136" y="53"/>
<mx:TextInput x="225" y="57" id="message" width="363"/>
<mx:Button label="发送http请求" x="336" y="107" id="buttonbtn" width="111" color="#F1B809" click="onSend();"/>

</mx:Application>


web端,建立index.jsp文件

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<body>
<%="Hello," + request.getParameter("message") %>
</body>
</html>


实例三

上面的例子已经说明了提交数据的情况,即提交参数,下面再举一个例子,用的request方式。此例子是网站抄来的,请看:

<mx:HTTPService id="userRequest" url="http://localhost/flex.php" useProxy="false" method="POST">
<mx:request xmlns="">
<username>{username.text}</username>
<password>{pass.text}</password>
</mx:request>
</mx:HTTPService>
<mx:Form x="22" y="10" width="356">
<mx:HBox>
<mx:Label text="Username"/>
<mx:TextInput id="username"/>
</mx:HBox>
<mx:HBox>
<mx:Label text="PassWord"/>
<mx:TextInput id="pass"/>
</mx:HBox>
<mx:Button label="Submit" click="userRequest.send()"/>
</mx:Form>


这种提交和前面一种例子的提交,结果一样,方式不同而已。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C是一种高级编程语言,起初在20世纪70年代由丹尼斯·里奇和肯·汤普逊在贝尔实验室开发。C是一种通用的编程语言,广泛用于开发各种应用程序,尤其是操作系统和嵌入式系统。它具有高效性和可移植性的特点,因此被广泛应用于各种不同的平台和设备上。 C语言是结构化的编程语言,通过使用函数、变量和逻辑控制结构等构建程序。它具有丰富的操作符和数据类型,允许程序员灵活地操作数据。同时,C语言还提供了强大的指针功能,允许直接访问和操作内存中的数据,这对于开发底层系统和高性能应用非常有用。 C语言还支持面向对象编程的编程范式,通过结构体和函数指针等特性,可以实现类似面向对象的概念。虽然C语言本身不具备面向对象的语法和特性,但程序员可以通过合理的设计和编码实现面向对象的思想。 由于C语言具有高效性和可移植性,对于开发底层系统和资源有限的嵌入式系统尤为重要。许多操作系统的内核和驱动程序都是用C语言编写的。此外,C语言还是其他一些编程语言的基础,例如C++和Java等,因为它们都直接或间接地从C语言借鉴了很多概念和语法。 总的来说,C语言作为一种高级编程语言,具有高效性、可移植性和灵活性的特点,被广泛应用于各种不同的领域和平台。它不仅是计算机科学教育的重要组成部分,也是程序员必须掌握的基本工具之一。 ### 回答2: c是英文字母表中的第三个字母,它的大小写形式分别是C和c。在英语中,c可能代表着许多不同的词汇和概念。比如,它常常用来表示“猫”(cat)这个动物的首字母,也可以代表“咖啡”(coffee)这种饮料的首字母。此外,c还有很多其他的用法。比如,它是数学中的一个重要符号,代表着光速的常数。在计算机科学中,c是一种编程语言的名称,它是一种通用的高级计算机程序设计语言,广泛用于开发各种应用程序和系统软件。此外,c还可以代表着“中文”(Chinese)、”文化”(culture)和”创造”(create)等概念。总的来说,c在英语和其他领域中有很多不同的含义和用法,它是一个非常多功能的字母。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值