2016-09-14 19 views
0

我有一個簡短的問題。誰能解釋這在Node Js中,tcp連接中的socket的.on函數是什麼

socket.on("message",function(message){}) 

我嘗試連接到TCP服務器上的node.js

server.on('connection',function(socket){ 
     socket.on('message',function(message){ 
       console.log("got the message"); 
       socket.sendEndMessage("hello"); 
      } 
     ); 
    }); 

我需要知道什麼時候socket.on("message",function(message){})將被調用。當連接到服務器的套接字發出 '消息' 事件

回答

0

socket.on( 「消息」,函數(消息){})將被稱爲:

socket.emit('message', { /* an object to be sent */ }); 

使用socket.on方法,允許您可以管理如何處理自定義或內置收到的消息事件。如果你通過服務器發送不同類型的消息,可以說,requestsStats和requestUsersList消息類型,你會被髮射的消息像

socket.emit('requestStats', { filter: statsFilter }); 
socket.emit('requestUsersList', { filter: userAccessLevel }); 

你需要處理它們的服務器上(或客戶)使用:

socket.on('requestStats', function(message){ // process message content }); 

socket.on('requestUsersList', function(message) { // process message content }); 

基本上,你可以自定義事件/消息通過網絡套接字進行發送。

+0

非常感謝。但我怎麼能從client.my客戶端發出事件可以像c + +套接字。 –

+0

我不需要使用C++來實現套接字。如果你使用的是socket.io,那麼它是一個C++庫:http://socket.io/blog/socket-io-cpp/ 在這種情況下,你可以使用_io-> socket() - > emit( 「CUSTOM_EVENT」,MSG); – adonike

+0

是的謝謝。我必須使用C#庫可能是(https://github.com/Quobject/SocketIoClientDotNet) –