解析Flex與服務(wù)器端的通信的幾種方式
在學(xué)習(xí)Flex的過(guò)程中你可能會(huì)遇到Flex與服務(wù)器端的通信方式方面的問(wèn)題,這里和大家分享一下,F(xiàn)lex開(kāi)發(fā)中最重要的內(nèi)容之一,就是與服務(wù)器和數(shù)據(jù)庫(kù)的通信。
Flex與服務(wù)器端的通信方式
Flex開(kāi)發(fā)中最重要的內(nèi)容之一,就是與服務(wù)器和數(shù)據(jù)庫(kù)的通信。而這樣的通信方式我所知道的大概有七種,其中Blazeds與LCDS可以歸結(jié)成一種。如果要實(shí)現(xiàn)Flex與客戶(hù)端應(yīng)用程序之間的通信,我想主要用到的方法為:Socket通信。而在Web方面,F(xiàn)lex提供了3個(gè)類(lèi)實(shí)現(xiàn)與服務(wù)器端的通信:HTTPService,ReObject和WebService。另外,我們還可以根據(jù)外部中間插件來(lái)讓Flex與服務(wù)器端進(jìn)行通信,我所了解的有Blazeds(Lcds),Red5(FMS)流媒體服務(wù)器,PHPRPC。
◆HTTPService類(lèi)用于超文本傳輸協(xié)議(HTTP)實(shí)現(xiàn)與服務(wù)器的通信。Flex應(yīng)用程序用GET或POST請(qǐng)求將數(shù)據(jù)發(fā)送到服務(wù)端,并處理該請(qǐng)求所返回的XML或字符串。使用這個(gè)HTTPService類(lèi),可以與PHP頁(yè),ColdFusion頁(yè),JSP頁(yè),Javaservlet,RubyonRails,以及MicrosoftASP頁(yè)進(jìn)行通信。
◆RemoteObject類(lèi)可以與服務(wù)器之間通過(guò)ActionScriptMessageFormat(AMF)對(duì)象進(jìn)行通信。通常來(lái)說(shuō),我們也可以把Blazeds與Lcds歸于這一類(lèi)。RemoteObject也可以與java或coldFusion遠(yuǎn)程網(wǎng)關(guān)進(jìn)行通信,或者通過(guò)開(kāi)源項(xiàng)目(例如AMFPHP.SabreAMF或WebORB)與.NET和PHP進(jìn)行通信。
◆WebService類(lèi)與web服務(wù)進(jìn)行通信,使用基于SOAP的XML或XML,web服務(wù)通過(guò)web服務(wù)描述語(yǔ)言(WSDL)定義其接口。
◆Socket類(lèi)可以實(shí)現(xiàn)直接與應(yīng)用程序進(jìn)行通信,而不必在Web的基礎(chǔ)上,通信的方法與JAVA或.NET之間進(jìn)行Socket的方法大致上是一樣的,具體的,將在下面的章節(jié)中介紹。
關(guān)于Red5與FMS這兩個(gè)流媒體服務(wù)器,應(yīng)該說(shuō)它們本身的優(yōu)勢(shì)在于多多媒體上,而實(shí)現(xiàn)Flex與服務(wù)器端相連,也是它們最基本的功能之一。
還有的就是PHPRPC了,我對(duì)這門(mén)技術(shù)也不是很了解,只是用它連過(guò)Flex與java,有時(shí)間的話再具體研究吧。好了,下面的章節(jié)我們會(huì)具體拿出這幾個(gè)通信方式的實(shí)例,下一節(jié)我們介紹一下HTTPService。
【編輯推薦】
- 深入剖析Flex Builder布局和導(dǎo)航
- FlexBuilder4十大新特性閃亮登場(chǎng)
- Flex框架中Cairngorm和Mate的優(yōu)點(diǎn)大比拼
- FlexBuilder3.0與Eclipse3.4的***結(jié)合
- 解析Flex應(yīng)用開(kāi)發(fā)步驟 新特性和技術(shù)框架