Flex4与WebService通信
首先需要一個需要提供一個WebService服務。 這里用一個天氣預報的webservice為例,如中國氣象局的免費服務http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
通過下面這個網址可以輸入城市,查詢城市天氣預報
http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?op=getWeatherbyCityName
下面開始示例:
xml代碼:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?>?
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"???
?????????????? xmlns:s="library://ns.adobe.com/flex/spark"???
?????????????? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">?
??? <fx:Script>?
??????? <!--[CDATA[??
??????????? import mx.controls.Alert;??
??????????? import mx.rpc.events.FaultEvent;??
??????????? import mx.rpc.events.ResultEvent;??
??????????? //調用成功??
??????????? protected function webservice_resultHandler(event:ResultEvent):void??
??????????? {??
??????????????? message.text = (String)(event.result);??
??????????? }??
?
??????????? //調用失敗??
??????????? protected function webservice_faultHandler(event:FaultEvent):void??
??????????? {??
??????????????? Alert.show("調用失敗了," + event.fault.message as String, "提示");??
??????????? }??
?
??????????? protected function serach_clickHandler(event:MouseEvent):void??
??????????? {??
??????????????? webservice.getWeatherbyCityName(city.text);??
??????????? }??
??????? ]]-->?
??? </fx:Script>?
??? <fx:Declarations>?
??????? <!-- 將非可視元素(例如服務、值對象)放在此處 -->?
??????? <s:WebService id="webservice"?
????????????????????? wsdl="http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl"???
????????????????????? result="webservice_resultHandler(event)"???
????????????????????? fault="webservice_faultHandler(event)"?
????????????????????? showBusyCursor="true" />?
??? </fx:Declarations>?
??? <s:TextInput x="138" y="85" id="city"/>?
??? <s:Button x="298" y="86" label="Search" id="serach" click="serach_clickHandler(event)" />?
??? <s:TextArea x="138" y="136" width="441" id="message"/>?
</s:Application>?
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
????? xmlns:s="library://ns.adobe.com/flex/spark"
????? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
?<fx:Script>
??<!--[CDATA[
???import mx.controls.Alert;
???import mx.rpc.events.FaultEvent;
???import mx.rpc.events.ResultEvent;
???//調用成功
???protected function webservice_resultHandler(event:ResultEvent):void
???{
????message.text = (String)(event.result);
???}
???//調用失敗
???protected function webservice_faultHandler(event:FaultEvent):void
???{
????Alert.show("調用失敗了," + event.fault.message as String, "提示");
???}
???protected function serach_clickHandler(event:MouseEvent):void
???{
????webservice.getWeatherbyCityName(city.text);
???}
??]]-->
?</fx:Script>
?<fx:Declarations>
??<!-- 將非可視元素(例如服務、值對象)放在此處 -->
??<s:WebService id="webservice"
?????? wsdl="http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl"
?????? result="webservice_resultHandler(event)"
?????? fault="webservice_faultHandler(event)"
?????? showBusyCursor="true" />
?</fx:Declarations>
?<s:TextInput x="138" y="85" id="city"/>
?<s:Button x="298" y="86" label="Search" id="serach" click="serach_clickHandler(event)" />
?<s:TextArea x="138" y="136" width="441" id="message"/>
</s:Application>
?
OK,運行應用程序,輸入城市名稱,you can see:
?
?
轉載于:https://www.cnblogs.com/dynasty/archive/2011/05/28/2061035.html
總結
以上是生活随笔為你收集整理的Flex4与WebService通信的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TComboBox下拉取值
- 下一篇: [视频]怎样提升asp.net mvc