2012-09-17 33 views
1

我刚开始使用Socket.io,我做了一个快速示例应用程序,大部分事情似乎都在起作用。但是,当我在办公室的另一台PC上测试它时,它不起作用。我一直无法确定问题或共同因素。它适用于Chrome和Firefox中的iMac以及运行Firefox 15.0.1的Windows计算机。Socket.io无法在某些机器上工作

但是在其他两台机器上它不起作用,它们运行Firefox 15.0.1和最新的chrome。他们可以连接和接收广播,但他们不会发送任何广播。

随socket.io提供的示例应用程序面临同样的问题,所以我知道我的代码不是问题。

服务器是一个机架空间虚拟机。这些计算机都共享相同的IP地址,这会是问题吗?

谢谢。

Connection I5m-GX0YxKk-fsqkaDYr accepted. 
debug - emitting heartbeat for client I5m-GX0YxKk-fsqkaDYr 
debug - websocket writing 2:: 
debug - set heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - got heartbeat packet 
debug - cleared heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - set heartbeat interval for client I5m-GX0YxKk-fsqkaDYr 
debug - client authorized 
info - handshake authorized 2_OfnBCUPoO1TuWUaDYs 
debug - setting request GET /socket.io/1/websocket/2_OfnBCUPoO1TuWUaDYs 
debug - set heartbeat interval for client 2_OfnBCUPoO1TuWUaDYs 
debug - client authorized for 
debug - websocket writing 1:: 
Connection 2_OfnBCUPoO1TuWUaDYs accepted. 
debug - setting request GET /socket.io/1/xhr-polling/2_OfnBCUPoO1TuWUaDYs?t=1347888419067 
debug - setting poll timeout 
debug - discarding transport 
debug - cleared heartbeat interval for client 2_OfnBCUPoO1TuWUaDYs 
debug - emitting heartbeat for client I5m-GX0YxKk-fsqkaDYr 
debug - websocket writing 2:: 
debug - set heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - got heartbeat packet 
debug - cleared heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - set heartbeat interval for client I5m-GX0YxKk-fsqkaDYr 
debug - setting request GET /socket.io/1/jsonp-polling/2_OfnBCUPoO1TuWUaDYs? t=1347888429074&i=0 
debug - setting poll timeout 
debug - discarding transport 
debug - clearing poll timeout 
debug - clearing poll timeout 
debug - jsonppolling writing io.j[0]("8::"); 
debug - set close timeout for client 2_OfnBCUPoO1TuWUaDYs 
debug - jsonppolling closed due to exceeded duration 
debug - emitting heartbeat for client I5m-GX0YxKk-fsqkaDYr 
debug - websocket writing 2:: 
debug - set heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - got heartbeat packet 
debug - cleared heartbeat timeout for client I5m-GX0YxKk-fsqkaDYr 
debug - set heartbeat interval for client I5m-GX0YxKk-fsqkaDYr 
debug - setting request GET /socket.io/1/jsonp-polling/2_OfnBCUPoO1TuWUaDYs?t=1347888449506&i=0 
debug - setting poll timeout 
debug - discarding transport 
debug - cleared close timeout for client 2_OfnBCUPoO1TuWUaDYs 
^[email protected]:~# node socket 
info - socket.io started 
debug - client authorized 
info - handshake authorized R840LL5ZZes1YFB_aZS8 
debug - discarding transport 
debug - jsonppolling received data packet �17�3:::Hello Server!�17�3:::Hello Server! 
debug - client authorized 
info - handshake authorized ycWCnVfgTTLAdi0maZS9 
debug - client authorized 
info - handshake authorized av8ttHujRRMUNdZWaZS- 
debug - setting request GET /socket.io/1/websocket/av8ttHujRRMUNdZWaZS- 
debug - set heartbeat interval for client av8ttHujRRMUNdZWaZS- 
debug - client authorized for 
debug - websocket writing 1:: 
Connection av8ttHujRRMUNdZWaZS- accepted. 
^[email protected]:~# node socket 
info - socket.io started 
debug - client authorized 
info - handshake authorized tod2RUk4cC6njt7_ab1d 
debug - setting request GET /socket.io/1/websocket/tod2RUk4cC6njt7_ab1d 
debug - set heartbeat interval for client tod2RUk4cC6njt7_ab1d 
debug - client authorized for 
debug - websocket writing 1:: 
Connection tod2RUk4cC6njt7_ab1d accepted. 
debug - client authorized 
info - handshake authorized Bm2b5koW4OhwMN0Uab1e 
debug - setting request GET /socket.io/1/websocket/Bm2b5koW4OhwMN0Uab1e 
debug - set heartbeat interval for client Bm2b5koW4OhwMN0Uab1e 
debug - client authorized for 
debug - websocket writing 1:: 
Connection Bm2b5koW4OhwMN0Uab1e accepted. 
debug - setting request GET /socket.io/1/xhr-polling/Bm2b5koW4OhwMN0Uab1e?t=1347888478540 
debug - setting poll timeout 
debug - discarding transport 
debug - cleared heartbeat interval for client Bm2b5koW4OhwMN0Uab1e 
debug - emitting heartbeat for client tod2RUk4cC6njt7_ab1d 
debug - websocket writing 2:: 
debug - set heartbeat timeout for client tod2RUk4cC6njt7_ab1d 
debug - got heartbeat packet 
debug - cleared heartbeat timeout for client tod2RUk4cC6njt7_ab1d 
debug - set heartbeat interval for client tod2RUk4cC6njt7_ab1d 
debug - setting request GET /socket.io/1/jsonp-polling/Bm2b5koW4OhwMN0Uab1e?t=1347888488546&i=0 
debug - setting poll timeout 
debug - discarding transport 
debug - clearing poll timeout 
+0

你检查了各自的浏览器的控制台为javascript错误或404s? socket.io示例应用程序中的问题究竟是什么? – rdrey

+0

在面临问题的浏览器上,他们可以接收服务器发送的广播,但他们无法指示服务器发送广播。这在一些机器上工作正常。刚刚等待10秒钟后,出现问题的机器似乎又回到了xhr-polling方法。不要认为它可能是浏览器问题,因为在不同的机器上使用相同的版本。 – SteveEdson

+0

刚刚取得突破,将端口设置为443似乎工作。为什么是这样? – SteveEdson

回答

0

我部分解决了这个问题。反病毒程序阻止了几台机器上的网络套接字连接。我花了一段时间才找出这个问题,因为http://websocketstest.com/显示所有端口都是开放的,并且软件显示没有防火墙处于活动状态。但是,退出防病毒程序时,所有事情都再次开始工作。

不知道为什么http://websocketstest.com/显示所有端口都是开放的。现在切换到端口843。

谢谢

相关问题