首页 > 代码库 > 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