封装模块
我们把socket.js封装成一个模块,将在该模块中定义一些我们要存储数据的变量。如下代码:
var Cookie= require('express/node_modules/cookie'); //使用cookie
module.exports = function(app){
var io = require('socket.io')(app);
var sockets = {}; //存储用户的socket
var socketShops={}; //存储商家的socket
var socketShopsName={}; //存储所有商家的名字
var socketsTel={}; //存储所有用户电话
var socketShopsService={}; //存储商家的服务
}
在该模块中添加客户端的验证与连接,完成后的代码结构为:
module.exports = function(app){
//定义相关变量
io.use(function(socket,next){
//登录验证
});
io.on('connection', function (socket) {
// 连接成功后,逻辑处理
socket.on('message',function(socket){
// 收到消息
});
socket.on('disconnect',function(){
//断开连接
});
});
}