2014-02-18 49 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.