2013-12-09 43 views
0

在Flash中,我們可以創建一個服務器套接字與此:的Actionscript ServerSocket的驗證連接

protected var socket:ServerSocket = new ServerSocket(); 
protected function createServer():void 
{ 
    socket.bind(1234,"0.0.0.0"); 
    socket.addEventListener(ServerSocketConnectEvent.CONNECT, clientConnectedHandler); 
    // start listening for connections 
    socket.listen(); 
} 

有了這個,任何Flash應用程序嘗試使用1234端口將獲得連接連接到服務器插槽。在接受服務器套接字連接之前,如何在連接上進行驗證以確保它已從我的應用程序連接?

謝謝。

回答

0

SockerServer例如將拋出失敗錯誤:

引發RangeError - 當localPort 65535

引發ArgumentError大於小於0或出現此錯誤 - 當localAddress不是 語法時出現此錯誤格式良好的IP地址。 IOError - 當套接字 無法綁定時,例如:底層網絡套接字(IP和端口號 )已被另一個對象或進程綁定。 應用程序正在用戶帳戶下運行,該用戶帳戶沒有綁定到端口所需的 權限。試圖綁定到已知端口(本地端口< 1024) 此ServerSocket對象已被綁定時,特權問題通常會發生 。 (在 綁定到不同的套接字之前調用close()。)當localAddress不是有效的本地 地址時。

您可以使用try..catch語句來處理這些錯誤。 如果這些錯誤不被拋出,開放端口成功:)