2011-06-14 6 views
4

편집Node.js 연결 오류가 누락 되었습니까?

솔루션 :

가 킥 - 시작 연결에 "노드 server.js"후 브라우저에 IP를 방문하십시오. 왜 그것이 작동하지만, 그것은 나를 위해 않습니다.

그것은 (그 중요한 경우 Slicehost에에서 호스팅) a는 슬라이스의 다시 만들고 노드와 웹 소켓 서버 난 여전히 같은 문제가 있었다를 다시 설치 한 후 ..

Mkay있게되었습니다 방법. 나는 정상적인 요청이 작동했는지 (브라우저에 IP를 입력했는지) 확인했다. 또한 소켓 연결을 시작하는 것처럼 보였으므로 이제는 소켓 연결을 연결할 수도 있습니다.


node.js와 websocket-server 모듈을 사용하여 소켓 서버에 연결하려고합니다.

서버 측면은 다음과 같습니다

var server = ws.createServer(); 
    server.listen(80); 

    server.addListener("request", function(req, res) { 

    res.writeHead(200, { 
    "Content-Type": "text/plain" 
    }); 
    res.write("Hey! This is totally not the site you planned to visit."); 
    res.end(); 
    }); 

    server.addListener("connection", function(conn) { 

    conn.addListener("readyStateChange", function(readyState) { 

    }); 
    conn.addListener("open", function() { 

    }); 
    conn.addListener("close", function() { 

    }); 
    conn.addListener("message", function(message) { 
    server.broadcast(conn._id + ": "+message); 
    }); 
}); 

표준 절차를. ...이 같은 클라이언트에서

if (window["WebSocket"]) { 

      connection = new WebSocket("ws://[my IP]:80/"); 
      connection.onopen = function(event) { 
       console.log("connection open"); 
      } 

      connection.onclose = function(event) { 
       console.log("connection closed"); 
      } 

      connection.onerror= function(event) { 
       console.log("connection error"); 
      } 

      connection.onmessage = function(event) { 
       console.log(event.data); 
      }; 
     } 

에 연결하려고 할 때 ... 나는 다음과 같은 오류 얻을 :

_linklist.js:65

item._idleNext = list._idleNext;

TypeError: Cannot read property '_idleNext' of undefined at Object.append (_linklist.js:65:24) at Object.active (timers.js:136:9) at Socket._writeOut (net.js:461:10)

at Socket.write (net.js:378:17) 
at Object.draft76 ([my dir]/npm/node_modules/websocket-server/lib/ws/connection.js:401:28) 
at new Connection ([my dir]npm/node_modules/websocket-server/lib/ws/connection.js:165:22) 
at Server.<anonymous> ([my dir]npm/node_modules/websocket-server/lib/ws/server.js:72:7) 
at Server.emit (events.js:81:20) 
at Socket.<anonymous> (http.js:1034:14) 
at Socket._onReadable (net.js:684:27) 

그것은 내가 생각 이상이다 (잠시 동안 실행 않았다을)이 메시지는 연결을 시도 할 때마다 나타나기 시작했습니다. node.js 또는 websocket-server 코드에서 아무 것도 변경하지 않았습니다. 왜 이런 일이 일어 났는지 말해 줄 수있는 페니!

+0

이 정확한 문제가 있습니다. 어떻게이 지구촌에서이 해결 방법을 뛰어 넘었습니까? Node와 websocket-server 코드의 버전이 호환되지 않아야한다고 생각하지 않습니까? – jottos

+0

네가 잘못 기억하지 않는다면 분명히 불안정한 야간 노드를 만들었다. 노드를 설치하는 동안 튜토리얼을 따랐으므로 야간 버전을 가지고 있는지 전혀 몰랐기 때문에 그 점을 이해하는 데 시간이 좀 걸렸습니다. 아직 문제를 해결하지 않은 경우 가장 먼저해야 할 일입니다. 노드 버전을 확인하십시오. :) –

+0

_solution_을 질문으로 편집하는 대신 답변으로 게시하는 것이 좋습니다. –

답변

0

"노드 server.js"를 연결 한 후 브라우저에서 IP를 방문하여 연결을 시작할 수 있습니다. 왜 그것이 작동하지만, 그것은 나를 위해 않습니다.

또한 안정적인 버전의 노드가 있는지 확인하십시오. 문제가 나타 났을 때 나는 불안정했다.

관련 문제