RPC組件

HTTPService:

使用 HTTPService 類可表示 ActionScript 中的 HTTPService 對象。當調用 HTTPService 對象的 send() 方法時,將發出對指定 URL 的 HTTP 請求,並且返回 HTTP 響應。可以選擇向指定 URL 傳遞參數。如果沒有使用基於服務器的代理服務,則只能使用 HTTP GET 或 POST 方法。如果將 useProxy 屬性設置爲 true 並使用基於服務器的代理服務,則還可以使用 HTTP HEAD、OPTIONS、TRACE 和 DELETE 方法。

HTTPMultiService(SDK 3.4):

可以使用 <mx:HTTPMultiService> 標記表示一個 http 操作集合。每個標記都具有 URL、方法、參數和返回類型。

可以設置屬性(如 HTTPMultiService 標記上的 URL 和方法)來充當在每個單獨的操作標記上設置的值的默認值。HTTPMultiService 的 URL 充當在 http 操作標記上設置的任何相對 url 的基本 url(即前綴)。每個 HTTP 操作都包含一個 send() 方法,用於將 HTTP 請求發送給指定的 URL 並返回 HTTP 響應。

可以將用於將數據放入 HTTP 請求的參數傳遞給指定 URL。contentType 屬性指定一個 MIME 類型,此類型用於確定在網絡中傳輸的數據格式(例如 HTTP 表單編碼或 XML)。

也可以使用序列化過濾器實現自定義 resultFormat(例如 JSON)。如果沒有使用基於服務器的代理服務,則只能使用 HTTP GET 或 POST 方法。如果將 useProxy 屬性設置爲 true 並使用基於服務器的代理服務,則還可以使用 HTTP HEAD、OPTIONS、TRACE 和 DELETE 方法。

注意:與 HTTPService 類不同,HTTPMultiService 類不定義 request 屬性。

注意:與 HTTPService 一樣,由於軟件限制,當使用 GET 而不使用代理時,HTTPMultiService 不會生成用戶友好的錯誤消息。

<mx:HTTPMultiService id="srv" baseURL="http://localhost/">  
  
  <mx:HTTPOperation id="srvGetPerson"  
            name="getPerson" url="person.cfm"  
            method="POST"  
            result="onGetPersonResult(event)"  
            fault="onGetPersonFault(event)">  
    <mx:argumentNames>  
      <mx:String>firstName</mx:String>  
      <mx:String>lastName</mx:String>  
    </mx:argumentNames>  
  </mx:HTTPOperation>  
  
  <mx:HTTPOperation id="srvSavePerson"  
            name="savePerson" url="person.cfm"  
            method="POST"  
            result="onSavePersonResult(event)"  
            fault="onSavePersonFault(event)">  
    <mx:argumentNames>  
      <mx:String>firstName</mx:String>  
      <mx:String>lastName</mx:String>  
      <mx:String>age</mx:String>  
      <mx:String>gender</mx:String>  
    </mx:argumentNames>  
  </mx:HTTPOperation>  
  
</mx:HTTPMultiService>  

var at1:AsyncToken = srvGetPerson.send("Taro", "Yamada");   
var at2:AsyncToken = srvSavePerson.send("Taro", "Yamada", 35, "m");

HTTPService/WebService/RemoteObject既是定義類又是執行類,而現在HTTPService/WebService/RemoteObject只是定義類,執行類被分成了不同的“操作類”。

mx.rpc.http.Operation 類是在MXML裏面的 mx:HTTPOperation
mx.rpc.soap.Operation 類是在MXML裏面的 mx:WebServiceOperation
mx.rpc.http.Operation類是在MXML裏面的 mx:RemoteObjectOperation

<mx:RemoteObject id="ro">  
  <mx:RemoteObjectOperation id="aaa" name="getAAA">  
    <mx:arguments>  
    </mx:arguments>  
  </mx:RemoteObjectOperation>  
</mx:RemoteObject>  
  
<mx:WebService id="ws">  
  <mx:WebServiceOperation id="bbb" name="getBBB">  
    <mx:arguments>  
    </mx:arguments>  
  </mx:WebServiceOperation>  
</mx:WebService>  
WebSerivce:
WebService 類提供對遠程服務器上基於 SOAP 的 Web 服務的訪問。

RemoteObject :

RemoteObject 類使您可以訪問遠程應用程序服務器上的類。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章