999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ActionScript3網絡通信簡析

2014-05-30 12:34:46齊兵輝李清秀
企業技術開發·下旬刊 2014年8期
關鍵詞:網絡通信文本

齊兵輝 李清秀

摘 要:ActionScript3中的網絡通信方式和之前的語言徹底不同,它的實現機制也有了根本的改變。在ActionScript2中,加載數據的方法零零碎碎分散在全局函數、LoadVars、XML等許多地方,調用的方式也是五花八門,難學、難記、難用。在ActionScript3中,將所有與外部數據交互的功能都集中到了flash.net.*包中,由專門的類來管理,實現的流程標準、統一,ActionScript3網絡通信API的使用變得前所未有的簡單,另外還內嵌了多種事件支持,對通信過程的控制也比以前更加精確。

關鍵詞:Actionscript3;網絡通信

中圖分類號:TP393.0 文獻標識碼:A 文章編號:1006-8937(2014)24-0095-02

稍復雜的ActionScript3網絡應用程序,一般都會涉及到加載外部數據或與服務器端腳本相互通信。

ActionScript3對網絡通信的支持空前強大,目前主流的網絡數據交互方式幾乎全部支持。粗略的說,ActionScript3把一個成功的網絡通信抽象成以下過程:

①構建通信請求對象(URLRequest)。

②使用通信請求對象,構建URLLoader對象,并發出數據請求。

③數據收到之后,發出完成事件,調用“讀取完成”事件的偵聽器處理返回的數據。

這里有一個要點:提交的數據放在URLRequest對象中,讀取到的數據放在URLloader對象中。

這3個過程是相互獨立的,耦合度較低。通信請求對象只負責構建請求的內容,它建立時并不知道何時會被URLLoader對象接納并開始發送請求;而URLLoader對象只管發送請求和事件,并不知道自己發送的請求對象內容是什么,也不知道數據返回之后會有什么樣的操作;“加載完成”事件偵聽器函數中只知道完成后要干什么,不知道自己什么時候才會偵聽到事件。3個重要部分的分離,給編程帶來了安全性和靈活性。ActionScr-

ipt3的架構設計經常能給我們以貼心和驚喜。

要建立一個成功的通信請求,通信請求對象必須含有足夠的信息,必須知道要向誰請求、通過什么方式、有沒有要提交的數據。因此,這些信息包括:

請求的URL地址:對應于URLRequest對象的url屬性。

請求的方式:對應于method屬性,默認是GET方式。

有兩種方式可選GET和POST,使用URLRequestMethod.GET和URLRequestMethod.POST常量賦值。有沒有要提交的數據:數據對應于data屬性,數據的格式對應于contentType屬性。如果是純粹的加載,那么不需要data屬性。如果要提交一部分數據,那么就要放在data屬性中,比如XML文本等。

不論是純粹的讀取外部數據,還是要提交一些數據并讀取返回信息,都要先發出數據請求。

發出數據請求,其實就是按照數據請求對象攜帶的信息,向指定地址發出請求。這部分由URLLoader對象來完成。

我們可以選擇直接將URLRequest對象傳入URLLoader對象構造函數,這樣URLLoader對象一旦建立,就可以立刻發送請求。

如果有數據返回,那么將會放在這個URLLoader對象的data屬性中。可以通過URLLoader對象的dataFormat屬性來判斷data屬性中存儲的數據格式是文本型的、二進制型的,還是變量名值對型的。

URLLoader對象會發出如下6種事件,可以讓我們監聽,并更好地控制加載流程:

Load()一調用,就發出Event.OPEN事件。

加載過程中,發出ProgressEvent.PROGRESS事件,包含下載字節數信息。

加載完成,發出Event.COMPLETE。

加載完成或者失敗之前,會發出HTTP狀態事件HTTPSta-

tusEvent.HTTP_STATUS。

加載失敗,發出IOErrorEvent.IO_ERROR事件。

發現加載內容不合安全規則,發出SecurityErrorEvent.SEC-

URITY_ERROR。

偵聽器函數就是標準的DOM3事件偵聽器函數,沒有什么特別。一般會根據具體的編程需要,選擇上面的6種事件的部分或全部進行監聽。

URLLoader把讀取到的外部數據劃分為3種格式:文本、值對、二進制。其中,普通文本、XML等以普通UTF-8字符組成的字符串文本都屬于文本格式。值對格式,就是一個URLVariabl-

es對象。二進制格式數據是最強大和靈活的一種數據格式,使用ByteArray對象表示。

什么是二進制格式數據?什么是二進制文件?從本質上說,不同文件格式的差別就是信息的編碼不同,而編碼總是二進制的。因此,所有文件從本質上說都是二進制的。但是,這里所講的二進制文件是為了強調和文本格式文件區分開,也就是說非文本格式文件就是這兒所說的二進制文件。所有的圖像、SWF文件都可以以二進制數據格式載入,以ByteArray對象表示。

在網絡應用中,XML已經毫無疑問地占據了霸主地位。我們在網絡編程中,與XML型數據的交互將是最頻繁的。XML類型是文本格式數據的一種,URLLoader默認的數據格式就是文本,即dataFormat=URLLoaderDataFormat.TEXT。

如果服務器端腳本是值對形式的數據,且是URL編碼形式,那么就是URLVariables類型的數據,本書中為了和以前老版本中的術語一致,仍然稱呼其為值對形式數據。

ActionScript3增加了對二進制格式數據的支持,實在是一大福音。本節講述如何讀取二進制格式數據。讀取二進制格式數據后,二進制格式數據以ByteArray對象存儲在URLLoader對象的data中。

監控加載進度很簡單,只需要增加一個偵聽器,偵聽URL-

Loader對象發出的ProgressEvent.PROGRESS事件。事件對象是flash.events.ProgressEvent類的實例,有兩個屬性:bytedLoaded屬性用來記錄當前下載的字節數;bytesTotal屬性記錄總共要下載的字節數。

在ActionScript2以及以前在Flash中打開任何網址,只需要調用全局函數getURL()即可。在ActionScript3中,已經取消了getURL()這個全局函數,取而代之的是flash.net包中的函數navi-

gateToURL()。

使用navigateToURL()之前,必須導入flash.net包。API格式如下:

Public function navigateToURL(request:URLRequest,window:String=null):void

Request對象包含要跳轉的網址,window字符串表示要顯示request指定網址的瀏覽器窗口或者html框架。如果不傳入Window參數,那么就是默認在新窗口打開。

Window的常用字符串有4種:“_self”表示在當前框架當前窗口打開網址;“_blank”表示在新窗口中打開網址;“_parent”表示在當前框架的父框架上打開網址;”_top”表示在當前窗口的頂級框架中打開網址。

參考文獻:

[1] 趙冠偉,夏斌,聶云峰.富互聯網應用程序研究初探[J].微型機與應用,2005,(12).

[2] 戴侃,楊小虎.基于J2EE 和FLEX 技術構建RIA系統的探索與實現[J].微電子學與計算機,2003,(5).

[3] 張蓓,周強,李莉,等.Flex技術及其在畢業生贈書系統中的應用[J].現代圖書情報技術,2008,(5).

[4] 楊占坡,楊銘,翁穎.Flex3 RIA開發詳解與精深實踐[M].北京:清華大學出版社,2009.

[5] 胡潔.Flex完全自學手冊[M].北京:機械工業出版社,2009.

猜你喜歡
網絡通信文本
海上軍用網絡通信的安全控制技術
初中群文閱讀的文本選擇及組織
甘肅教育(2020年8期)2020-06-11 06:10:02
在808DA上文本顯示的改善
基于網絡通信的智能照明系統設計
電子制作(2019年15期)2019-08-27 01:11:48
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
計算機網絡通信常見問題與技術發展研究
電子制作(2018年10期)2018-08-04 03:24:46
網絡通信中信息隱藏技術的應用
基于網絡通信的校園智能音箱設計
電子制作(2018年1期)2018-04-04 01:48:30
談計算機網絡通信常見問題及技術發展
電子制作(2017年17期)2017-12-18 06:41:06
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
主站蜘蛛池模板: 丁香六月激情婷婷| 欧美一区福利| 久久婷婷综合色一区二区| 伊人久久婷婷五月综合97色| 欧美伊人色综合久久天天| 久久国产亚洲偷自| 亚洲AⅤ综合在线欧美一区| 青青草欧美| 亚洲AV电影不卡在线观看| 日本三级欧美三级| 亚洲无线视频| 好紧太爽了视频免费无码| 在线观看的黄网| 成人午夜久久| 久久免费精品琪琪| 欧美福利在线观看| 亚洲首页在线观看| 91免费国产在线观看尤物| 国产精品香蕉在线| 亚洲无码免费黄色网址| 国产欧美又粗又猛又爽老| 亚洲成年人网| 日韩在线播放欧美字幕| 欧美人与性动交a欧美精品| 久久国产毛片| 人妻21p大胆| 在线亚洲天堂| WWW丫丫国产成人精品| 亚洲bt欧美bt精品| 亚洲成人黄色在线观看| 欧美专区日韩专区| 国产欧美视频在线观看| 精品国产www| 日本人真淫视频一区二区三区| 国产区免费精品视频| 热久久这里是精品6免费观看| 18禁黄无遮挡免费动漫网站| 日韩免费毛片| 国产毛片久久国产| 久久久久人妻一区精品色奶水| 国产情精品嫩草影院88av| 88av在线看| 久久亚洲精少妇毛片午夜无码| 无遮挡国产高潮视频免费观看| 99精品在线视频观看| 国产欧美网站| 亚洲精品va| 国产成人欧美| 久久一色本道亚洲| 九色在线观看视频| 日本国产一区在线观看| 亚洲无码视频一区二区三区| 国产91av在线| 五月天久久综合| 99九九成人免费视频精品| 中国精品自拍| 91在线免费公开视频| 国模沟沟一区二区三区| 亚洲区欧美区| 97在线碰| 色视频国产| 在线观看免费国产| 色视频国产| 精品亚洲国产成人AV| 欧美一级特黄aaaaaa在线看片| 国产成人亚洲欧美激情| 欧美激情伊人| 久久大香伊蕉在人线观看热2| 毛片最新网址| 啦啦啦网站在线观看a毛片| 成人无码一区二区三区视频在线观看| 在线观看国产精品日本不卡网| 久久精品无码专区免费| AV在线麻免费观看网站| 国产在线第二页| 亚洲人成网址| 国产91九色在线播放| yjizz国产在线视频网| 亚洲欧美在线综合一区二区三区 | 亚洲第一精品福利| a毛片基地免费大全| 无码国产偷倩在线播放老年人|