2009-06-02 80 views

回答

4

其中一個對象(您發佈的第一個鏈接)是HTTPService對象本身。

第二個是包裝HTTPService對象的對象,併爲其提供了< mxml/>標記的附加功能。

這兩者可能沒有組合,因爲您不一定每次需要HTTService對象時都需要實現IMXMLObject和IMXMLSupport接口。

2

mx.rpc.http.mxml.HTTPService也可以處理併發性,而另一個不能。

編輯:

雖然在線文檔我看到併發性兩者的財產,有幾個消息來源說,那不是真實的(當我用它第一次嘗試我的測試沒有工作)。此外,併發包僅被導入到mxml.HTTPService中,而不是基本的rpc類。

Bug Comment Mederator comment on the docs page

+0

任何來源的信息? – dharm0us 2009-06-03 14:48:10

+0

是的,但零星的。 http://livedocs.adobe.com/flex/3/html/help.html?content=data_access_2.html 請滾動到版主wvxvw的評論。 另外https://bugs.adobe.com/jira/browse/FLEXDOCS-217 另外,如果你看看源代碼,rpc.mxml.Concurrency被導入到mx.rpc.mxml中。HTTPService,而不導入到其他。我同意這裏的文檔不是很有幫助。 – ryanday 2009-06-03 16:12:29

0

首先是mx.rpc.http封裝的部件和ActionScript代碼被使用。其他版本的HTTPService類是第一個類的子類,並且是mx.rpc.http.mxml包的成員。這是您使用標籤實例化對象時使用的版本。

這兩個版本幾乎完全相同,只有兩個顯着差異:只有MXML版本實現了showBusyCursor屬性,該屬性包含在HTTPService請求/響應週期期間顯示的動畫光標頂部,以及併發屬性,它決定了處理對同一網絡資源的多個併發請求。

併發屬性未在ActionScript中通常使用的HTTPService類中實現,因爲在使用ActionScript時,通常會爲每個新請求創建一個新的HTTPService對象。

來源:Adobe Flex的3聖經 - 大衛·加斯納

1

似乎有在URLLoader類更多的錯誤處理功能。使用MXML創建您的HTTPService雖然不是很大的區別。

// ActionScript Style 
private function myService():void { 
    var service:HTTPService = new HTTPService(); 
...service.parameters = value;... 
    service.send(); 
} 

< !-- MXML Style -- > 
<mx:HTTPService> 
...<parameters>... 
</mx:HTTPService>