兄弟会精英班 - 学习笔记(十 二)

2016-10-09  本文已影响0人  bastonly

Nodejs 长连接net 和 Socket.io

var net = require('net');

  1. 创建server.js
    var net = require('net'); var server = net.createServer(function(connection){ connection.on('end', function(){ console.log('client disconnect'); }); connection.write('Hello world!\r\n'); connection.pipe(connection); }); server.listen(8080, function(){ console.log('Server is listening'); });
  2. 创建client.js
    var net = require('net'); var client = net.connect({port: 8080}, function() { console.log('连接到服务器!'); }); client.on('data', function(data) { console.log(data.toString()); client.end(); }); client.on('end', function() { console.log('断开与服务器的连接'); });

基于网页的WebSocket.

  1. 安装socket.io
  2. 编写服务端代码

var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); app.get('/', function(req, res){ res.send('<h1>Welcome Realtime Server</h1>'); }); .....

  1. 编写客户端html代码

//连接websocket后端服务器 this.socket = io.connect('ws://172.16.0.254:3000'); //告诉服务器端有用户登录 this.socket.emit('login', {userid:this.userid,username:this.username}); //监听新用户登录 this.socket.on('login', function(o){ console.log(o); //处理 ... }); //监听用户退出 this.socket.on('logout', function(o){ console.log(o); //处理 ... }); //监听消息发送 this.socket.on('message', function(obj){ console.log(obj); //处理消息 ... });

上一篇下一篇

猜你喜欢

热点阅读