2016-07-26 6 views
0

왜 서버에서 데이터를받을 수 없는지 잘 모르겠습니다.websocket 서버에서 메시지를받을 수 없음

서버는 https://github.com/websockets/ws을 사용하여 node.js로 작성되었으며 예제를 사용하여 서버를 설정합니다. 나는 C#에서 데이터를 수신하는 방법이 문제는 내가 한 번 "무언가"를받을 수 있습니다 ClientWebSocket

public static async Task ReceiveData(ClientWebSocket ws) 
    { 
     ArraySegment<Byte> buffer = new ArraySegment<byte>(new Byte[8192]); 

     WebSocketReceiveResult result = null; 
     while (ws.State == WebSocketState.Open) 
      { 
       using (var ms = new MemoryStream()) 
       { 
        do 
        { 
         result = await ws.ReceiveAsync(buffer, CancellationToken.None); 
         ms.Write(buffer.Array, buffer.Offset, result.Count); 
        } 
        while (!result.EndOfMessage); 

        ms.Seek(0, SeekOrigin.Begin); 

        using (var reader = new StreamReader(ms, Encoding.UTF8)) 
         Console.WriteLine(reader.ReadToEnd()); 
       } 
      } 
    } 

를 사용

wss.on('connection', function connection(ws) { 

    ws.on('open', function(){ 
    ws.send('You are logged'); 
    }) 

    ws.send('something'); 
}); 

이것은 : 이것은 내가 데이터를 전송하는 방법입니다. 내 목표는 매초 "당신이 기록되었습니다"라는 메시지를 받고 싶다는 것입니다.

편집 : 설명이 문제는 ws.on ('open', ..) 내의 메시지가 어떤 이유로 전송되지 않는다는 것입니다.

당신의 시간 :

답변

0
ws.on('open', function(){ 
    ws.send('You are logged'); 
    var timer = setInterval(function() { 
     if (ws) 
      ws.send('You are logged'); 
     else 
      clearInterval(timer); 
    }, 1000); 
}); 

감사합니다?

+0

문제는 ws.on ('open', function() {ws, send ('some message');} 내의 메시지가 전혀 전송되지 않는다는 것입니다. ws.on ('열린', ...) –

관련 문제