WebSocketを利用する
Node.jsをインストールして、npmコマンドから "websocket" モジュールを同ディレクトリにインストールしてください。
その後、同ディレクトリの app.js を起動してこのページを表示すると、コンソールに双方向通信の内容が表示されます。
このページに埋め込まれているWebSocketクライアントコード
var ws = new WebSocket('ws://localhost:8080'); var timer; ws.onopen = function() { console.log('connect'); timer = setInterval(function() { ws.readyState === WebSocket.OPEN && ws.send('Client: Hello WebSocket!'); }, 3000); }; ws.onmessage = function(event) { console.log(event.data); }; ws.onclose = function() { console.log('close'); clearInterval(timer); }; ws.onerror = function(error) { console.log(error); };
サーバーコード(app.js)の内容
var http = require('http'); var WebSocketServer = require('websocket').server; var server = http.createServer(function(req, res) { res.writeHead(404); res.end(); }).listen(8080, function() { console.log('Server listening on port 8080'); }); var wsServer = new WebSocketServer({ httpServer: server, autoAcceptConnections: true }); wsServer.on('connect', function(connection) { console.log('connect'); connection.on('message', function(message) { console.log(message.utf8Data); }); connection.on('close', function(reasonCode, description) { console.log('disconnect'); clearInterval(connection.timer); }); connection.on('error', function(error) { console.log(error); }); connection.timer = setInterval(function() { connection.send('Server: Hello WebSocket!'); }, 3000); });