WebSocket入门案例两枚

第一种 使用ws模块

服务端,新建nodejs.js

//启动WebSocket服务器。
var server = require('http').createServer() , 
WebSocketServer =     require('ws').Server , 
wss = new WebSocketServer({ server: server }) , 
app = require('express')() , 
port = 1740;

//使用express中间件use,详细可以去看express
app.use(function (req, res) { 
    //send用来向客户端发送信息,on用来接收/监听客户端发来的信息
    res.send({ msg: "hello" });});
    //监听事件  //%s是字符串、%d是整数、%f代表浮点数。
    wss.on('connection', function connection(ws) { 
    //监听 
    ws.on('message', function incoming(message) {  
    console.log('received: %s', message);
 });
     //发送 
  ws.send('something');});
  server.on('request', app);
  server.listen(port, function () { 
    console.log('Listening on ' + server.address().port) 
  });

客户端,新建entry.js


接下来:
$ node nodejs.js //启动服务
打开浏览器,输入http://localhost:1740 ,在输入台中就可以看到服务端发来的信息了,同时服务端也可以看到客户端发来的信息

第二种 使用socket.io

服务端,新建nodejs.js

var app = require('express')();
var server = require('http').createServer(app);
var io =  require('socket.io').listen(server);
server.listen(80);

app.get('/', function (req, res) { 
    res.sendfile(__dirname + '/webSocket.html');
});
io.sockets.on('connection', function (socket) { 
    //发送事件。 
    socket.emit('news', { hello: 'world' });
     //接收事件。 
    socket.on('anotherNews', function (data) { 
     socket.emit('news', { hello: 'world' });  
    console.log(data); 
    });
});

客户端,新建entry.js



如果想了解更详细的内容,参见:
http://javascript.ruanyifeng.com/htmlapi/websocket.html

你可能感兴趣的:(WebSocket入门案例两枚)