socket.io

socket.io组件的目的是为了创建实时的应用,并且适用于所有的浏览器和移动设备。最重要的当然就是websocket了。它是nodejs中最常用的一个组件之一。

下面是一个官网示例:

 

服务器端:

 

var io = require('socket.io').listen(80);
 
io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

  

浏览器端:

 

 

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('news', function (data) {
    console.log(data);
    socket.emit('my other event', { my: 'data' });
  });
</script>

  

 

在express中使用socket.io:

 

Express 3.x

 

var app = express()
  , server = require('http').createServer(app)
  , io = io.listen(server);
 
server.listen(80);
 
io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

  

 

 

 

Express 2.x

 

var app = express.createServer()
  , io = io.listen(app);
 
app.listen(80);
 
io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});

  

 

客户端:

 

 

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('news', function (data) {
    console.log(data);
    socket.emit('my other event', { my: 'data' });
  });
</script>

  

安装命令:npm install socket.io

posted @ 2014-07-24 09:14  ~吉尔伽美什  阅读(183)  评论(0)    收藏  举报