WebSocketはシンプルなチャットルームを実現

1957 ワード

前の記事を見て、WebSocketの原理を深く理解していると思います.この記事では、具体的にどのように使うかを見てみましょう.ここで、nodejs-websocketで簡単なマルチチャットルームを実現し、この小さなケースからWebSocketの使用を学ぶ.Nodejs-websocketの使い方は公式apiを参照:https://www.npmjs.com/package/nodejs-websocketサーバ側:
//    nodejs-websocket
var ws = require('nodejs-websocket');
console.log("      ...")
//    
var server = ws.createServer((conn) => {
	conn.on("text", (str) => {
        console.log("      "+str)
        //    
        broadcast(str)
    })
    conn.on("close", (code, reason) => {
        console.log("    ")
    })
})
function broadcast(str) {
	//                 
    server.connections.forEach(function(connection) {
        connection.sendText(str);
    })
}
//    
server.listen(3000)
console.log("WebSocket    ")

クライアント:



    
       1
    


    
    if(window.WebSocket){ // var ws = new WebSocket('ws://100.39.8.55:3000'); ws.onopen = function(e){ console.log(" "); $('button').click(() => { if($('#m').val()){ // ws.send(' :'+$('#m').val()); $('#m').val('') } }) } ws.onclose = function(e){ console.log(" "); } ws.onerror = function(){ console.log(" "); } // ws.onmessage = function(e){ $('#messages').append('<li>'+ e.data +'</li>') } }