首页 > 代码库 > nodejs socket.io
nodejs socket.io
今天练习使用nodejs socket.io实现聊天室功能
已经做到功能:
1.自己发送信息在聊天室里出现;
2.自己的信息显示“我:”,其他人的信息显示其id;
3.进入退出聊天室会有系统提醒;
想做的功能:
1.根据id进行1对1的聊天;
2.创建组进行小范围讨论;
3.在bootstap里找个好看的prompt弹窗;
经验总结:
1.nodejs 中 express跟http的关系似乎像 jq和js一样,express可以替代http
var express = require(‘express‘);
var app =express();
var server = app.listen(8082);
即可搭出服务器监听。
2.nodejs这里有许多约定俗称的变量命名规则:
var socket = require(‘socket.io‘);
var app =express();
var io = socket.listen(server);
再查资料时候应注意可能被省略的变量命名,以及少数人使用特殊的命名时能反应过来。
3.http://www.cnblogs.com/xiezhengcai/p/3956401.html socket.io
1.有时间看上下篇更好的了解socket.io
2.除了系统自带的(服务端‘connection’‘disconnect‘,客户端‘connect‘等)
服务端和客户端的 emit 和 on 应该一一对应,任何一边发送另一边能有对应的接收。
3.服务端emit目前用到了以下几种
io.sockets.emit(‘String’,data);//给所有客户端广播消息
应用:一个用户进入聊天室给所有人提示
io.sockets.socket(socketid).emit(‘String’, data);//给指定的客户端发送消息
应用:1对1聊天?(待使用)
socket.broadcast.emit(‘String’, data);//给除了自己以外的客户端广播消息
应用:用户发送消息给其他聊天室(由于在自己聊天室和他人聊天室中显示的不同,这种方法比第一种更好用)
值得注意的这里是socket 开头 而不是io
socket.emit(‘String’, data);//给该socket的客户端发送消息
应用:系统反馈信息时候使用。
nodejs socket.io