http://wgcode.iteye.com/blog/814837
用flash去開發應用,,免不了網絡通訊,特別是網絡遊戲,需要用到即使通訊。
as3提供了兩個支持即時通訊的類:XMLSocket和Socket,前者其實是隻支持發送字符串,而後者就強大多了,支持發送字節,相對來說比較底層,而這也給我們更多的發揮空間。
其實,flash socket的網絡底層接受數據,就以與C++服務器通訊爲例子,C++服務器一般會發一段一段數據過來,每段數據都是由一定結構組成的,一般是消息頭和消息頭,然後再逐步分層解析。
在這裏,我只說接受網絡底層的處理,一般一段數據前面,還有有一個4個字節左右的數據,表示的是後面網絡流裏的數據有多少....
看下簡單示意圖
我們網絡底層需要做的處理,就是根據頭4個字節判斷出後面的數據大小,然後把那一整塊取出來,拋給上層解析,然後又在不停地偵聽,收到指定大小之後,又做類似的操作,下面看詳細的代碼