我刚开始使用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
你检查了各自的浏览器的控制台为javascript错误或404s? socket.io示例应用程序中的问题究竟是什么? – rdrey
在面临问题的浏览器上,他们可以接收服务器发送的广播,但他们无法指示服务器发送广播。这在一些机器上工作正常。刚刚等待10秒钟后,出现问题的机器似乎又回到了xhr-polling方法。不要认为它可能是浏览器问题,因为在不同的机器上使用相同的版本。 – SteveEdson
刚刚取得突破,将端口设置为443似乎工作。为什么是这样? – SteveEdson