自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

AMF協(xié)議讓FLASH工作化繁為簡(jiǎn)

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
AMF協(xié)議可以讓Flash傳輸變得簡(jiǎn)單。那么是如何做到的呢?這還要從下文中來(lái)了解一下了。希望通過(guò)文章內(nèi)容,讓大家對(duì)這一個(gè)過(guò)程能有所掌握。

在Flash開(kāi)發(fā)中,繁瑣的服務(wù)器傳輸工作一直讓開(kāi)發(fā)者們頭疼。但是AMF協(xié)議的出現(xiàn)讓這些工作有了簡(jiǎn)化。下面我們就簡(jiǎn)單介紹一下這個(gè)可直接內(nèi)置于Flash中的協(xié)議吧。AMF協(xié)議***的特色在于可直接將Flash內(nèi)置對(duì)象,例如Object, Array, Date, XML,傳回服務(wù)器端,并且在服務(wù)器端自動(dòng)進(jìn)行解析成適當(dāng)?shù)膶?duì)象,這就減輕了開(kāi)發(fā)人員繁復(fù)工作,同時(shí)也更省了開(kāi)發(fā)時(shí)間。由于AMF采用二進(jìn)制編碼,這種方式可以高度壓縮數(shù)據(jù),因此非常適合用來(lái)傳遞大量的資料。數(shù)據(jù)量越大,Flash Remoting的傳輸效能就越高,遠(yuǎn)遠(yuǎn)超過(guò)Web Service。至于XML, LoadVars和loadVariables() ,它們使用純文本的傳輸方式,效能就更不能與Flash Remoting相提并論了。

注意:Flash Remoting需要瀏覽器支持Bin ary POST,Flash 播放器在Nets cape 6.x.環(huán)境下運(yùn)行Flash Remoting會(huì)不起作用(Flash Remoting調(diào)用沒(méi)有效果也不返回錯(cuò)誤), Nets cape 7已經(jīng)糾正了這個(gè)b u g 。對(duì)于早期Sa fari和Chim era版的蘋(píng)果機(jī)也有這個(gè)問(wèn)題。同樣是輕量級(jí)數(shù)據(jù)交換協(xié)議,同樣是通過(guò)調(diào)用遠(yuǎn)程服務(wù),同樣是基于標(biāo)準(zhǔn)的HTTP和HTTPS協(xié)議, Flash Remoting為什么選擇了使用AMF而放棄了SOAP與Flash 播放器通信呢有如下原因:

SOAP將數(shù)據(jù)處理成XML格式,相對(duì)于二進(jìn)制的AFM太冗長(zhǎng)了; AMF能更有效序列化數(shù)據(jù);因?yàn)锳MF的初衷只是為了支持Flash ActionScript的數(shù)據(jù)類型,而SOAP卻致力于提供更廣泛的用途; AMF支持Flash 播放器 6只需要瀏覽器增加4 KB左右(壓縮后)的大小,而SOAP就大多了; SOAP的一些頭部文件請(qǐng)求在Flash 播放器 6不支持。那Flash 播放器 6為什么能訪問(wèn)基于SOAP的Web服務(wù)呢?原來(lái)Flash Remoting網(wǎng)關(guān)將SOAP請(qǐng)求在服務(wù)器端與轉(zhuǎn)換成AFM格式,然后利用AFM與Flash 播放器通信。另外,AMF包中包含onResult事件(比如說(shuō)response事件)和onStatus事件(比如說(shuō)error事件),這些事件對(duì)象在Flash中可以直接使用。

AMF協(xié)議從Flash MX時(shí)代的AMF0發(fā)展到現(xiàn)在的AMF3。AMF3用作Flash Playe 9的ActionScript 3.0的默認(rèn)序列化格式,而AMF0則用作舊版的ActionScript 1.0和2.0的序列化格式。 在網(wǎng)絡(luò)傳輸數(shù)據(jù)方面,AMF3比AMF0更有效率。AMF3能將int和uint對(duì)象作為整數(shù)(integer)傳輸,并且能序列化ActionScript 3.0才支持的數(shù)據(jù)類型, 比如ByteArray,XML和Iexternalizable。

在Flash Remoting MX中,AMF正是具備這種特性,只不過(guò)這里它是一種信息編碼格式。它本身并不產(chǎn)生信息數(shù)據(jù),而是用于編碼和解碼通過(guò)HTTP在Flash影片應(yīng)用程序和遠(yuǎn)程服務(wù)之間傳遞的數(shù)據(jù)。

由于AMF是專為ActionScript對(duì)象模型設(shè)計(jì)的信息編碼格式,所以對(duì)于使用Flash Remoting MX的Flash影片應(yīng)用程序來(lái)說(shuō)非常高效。

AMF的全稱是Action Message Format,它是一個(gè)二進(jìn)制數(shù)格式,專為ActionScript對(duì)象模型設(shè)計(jì)。要從遠(yuǎn)程服務(wù)發(fā)送和接收信息,Flash Remoting MX就使用Action Message Format。使用AMF,Flash Remoting MX可以編碼和解碼通過(guò)HTTP在Flash影片應(yīng)用程序和遠(yuǎn)程服務(wù)之間傳遞的數(shù)據(jù)。

AMF協(xié)議符合Simple Object Access Protocol(SOAP)協(xié)議格式,它使用信息包格式分段傳送信息。一個(gè)AMF信息包包含下面5個(gè)部分。

(1)信息包頭,這一部分包含了AMF版本信息。

(2)上下關(guān)系頭計(jì)數(shù)。

(3)上下關(guān)系頭配置。上下關(guān)系頭包含了關(guān)于一個(gè)一個(gè)獨(dú)立的AMF信息應(yīng)當(dāng)怎樣被處理的描述信息。

(4)信息計(jì)數(shù)。

(5)信息配置。

在客戶端,服務(wù)端方法請(qǐng)求被使用NetServices類或Service類的方法自動(dòng)序列化為AMF格式;在服務(wù)端, Flash Remoting MX逆序列化AMF信息。

當(dāng)服務(wù)端處理完成時(shí),結(jié)果又被序列化為AMF格式,并發(fā)回Flash影片應(yīng)用程序。服務(wù)端創(chuàng)建的AMF協(xié)議信息格式與客戶端創(chuàng)建的AMF信息格式相同。

單獨(dú)的AMF協(xié)議信息包主體內(nèi)包含了錯(cuò)誤或響應(yīng)對(duì)象,它們被表述成一個(gè)ActionScript對(duì)象。

責(zé)任編輯:佟健 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-06-21 13:59:33

AMF協(xié)議

2010-06-21 15:06:45

AMF協(xié)議

2010-06-24 16:57:30

AMF協(xié)議

2010-06-21 14:37:36

AMF協(xié)議

2010-06-18 13:53:22

AMF協(xié)議

2010-06-28 09:43:14

AMF協(xié)議

2010-06-28 09:50:42

AMF協(xié)議

2010-06-18 15:20:31

AMF協(xié)議

2010-06-21 13:14:09

AMF協(xié)議

2010-06-19 13:47:39

AMF協(xié)議

2010-06-18 14:06:03

AMF協(xié)議

2010-06-18 14:31:41

AMF協(xié)議

2022-06-07 11:16:51

云原生人工智能運(yùn)維

2010-10-25 13:58:48

2010-08-09 13:37:09

FlexDjango

2009-06-02 13:46:13

世紀(jì)互聯(lián)定制

2015-08-11 11:22:49

JMP

2010-08-29 21:45:14

DHCP協(xié)議

2010-08-02 16:14:54

2013-06-04 13:53:30

OSPF路由協(xié)議OSPF協(xié)議OSPF
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)