2014-02-18 42 views
0

我在Adobe Air(flex)中有一個桌面應用程序。 我在我的應用程序中使用了flashSocket.io庫來與node.js服務器上的socket.io進行通信。Adob​​e AIR-與socket.io連接問題

它適用於大多數客戶。 但是對於某些隨機客戶端,flex應用程序無法與socket.io服務器建立連接。它經常在flex上拋出連接錯誤和關閉錯誤。客戶端不在任何防火牆或代理服務器後面。

的中控臺的警告一樣

Web Socket Connection Invalid 

我想這對於那些誰不能夠連接的客戶端。

由於其爲大多數用戶工作,我不知道我應該在哪裏看看。另外,我無法在我身邊重現這一點。

這裏的服務器代碼:

var io = require('socket.io').listen(app); 
app.listen(8080, function() { 
    console.log('%s listening at %s', app.name, app.url); 
}); 
io.configure(function() { 
    io.set('transports', ['flashsocket']); 
    io.set('flash policy port', 843); 
}); 

Flex代碼:

socket = new FlashSocket("http://domain.com:8080/"); 
socket.addEventListener(FlashSocketEvent.CONNECT, onConnect); 
socket.addEventListener(FlashSocketEvent.MESSAGE, onMessage); 
socket.addEventListener(FlashSocketEvent.CLOSE, onDisconnect); //only close and connect_error event is always fired for certain clients 
socket.addEventListener(FlashSocketEvent.CONNECT_ERROR, onConnectError); 

任何幫助將高度讚賞。

回答

0

使用不同的端口,我們使用443.