2014-10-16 9 views
5

저는 Begginer in Node.js 또는 websocket입니다. 나는 문제가있다 :Node.js socket.io with websocket

내 HTML 코드 :

<!DOCTYPE html> 
<html> 
    <head> 
     <title>test</title> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    </head> 
    <body> 
     <script> 
      "use strict"; 
      var gniazdo = new WebSocket('ws://localhost:3000'); 
      gniazdo.onopen = function(){ 
       console.log('Połączono'); 
      }; 
      gniazdo.onmessage = function(m){ 
       console.log(m.data); 
      }; 
     </script> 
    </body> 
</html> 

내 Node.js를 코드 :

var io = require('socket.io')(3000); 
io.on('connection', function(socket){ 
    console.log('a user connected'); 
}); 

내가 콘솔에 오류가 있습니다

WebSocket connection to 'ws://localhost:3000/' failed: Connection closed before receiving a handshake response 

도움말 PLZ :

+0

Socket.io는 긴 폴링 및 연결이 지원되는 경우 웹 소켓으로의 연결을 먼저 테스트합니다. socket.io 클라이언트 라이브러리를 사용해야합니다. –

+0

Thx 도움 : –

답변

7

클라이언트가 WebSock을 사용 중입니다. Socket.IO에는 자체 프로토콜이 있습니다 (일 수 있습니다.은 WebSocket을 통해 전송되지만 다른 프로토콜을 통해 전송 될 수도 있음). 클라이언트가 Socket.IO의 자체 클라이언트를 사용하도록 변경하십시오.

<script src="https://cdn.socket.io/socket.io-1.1.0.js"></script> 

<script> 

    'use strict'; 

    var gniazdo = io('ws://localhost:3000'); 

    gniazdo.on('connect', function() { 

     console.log('Połączono'); 

     gniazdo.on('message', function (m) { 
      console.log(m.data); 
     }); 

    }); 

</script>