node.js websocket.io示例不工作?

我是node.js的新手,并通过“smashing node.js”书中的示例工作。 在websockets章节中,我正在努力使这个例子工作。 原谅我这是一个非常简单的错误! 我不确定ws.onopen事件处理程序是否正在工作?

代码如下:(首先是server.js文件):

 var express = require('express') , wsio = require('websocket.io'); var app = express.createServer().listen(3000); var ws = wsio.attach(app); app.use(express.static('public')); ws.on('connection', function (socket) { socket.on('message', function(msg) { console.log(' \033[96mgot:\033[39m ' + msg); socket.send('pong'); }); }); 

其次是./public/index.html文件的脚本内容:

 var lastMessage; window.onload = function () { var ws = new WebSocket('ws://localhost'); ws.onopen = function () { ping(); } ws.onmessage = function(ev) { console.log(' got: ' + ev.data); document.getElementById('latency').innerHTML = new Date - lastMessage; ping(); } function ping() { lastMessage =+ new Date; ws.send('ping'); document.getElementById('latency').innerHTML = 'test'; }; }; 

我已经使用package.json文件安装了节点模块。

在你的index.html中 ,你需要连接到端口3000,var ws = new WebSocket('ws://localhost:3000');