Node.js制作簡單聊天室
更新時(shí)間:2017年01月12日 11:46:51 作者:光明大神棍
這篇文章主要為大家詳細(xì)介紹了Node.js制作簡單聊天室的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
看了TCP的有關(guān)知識,寫了個(gè)基于NET的聊天室。
var net = require('net');
var count = 0,
users = {};
var server = net.createServer(function (conn) {
console.log('連接到');
conn.write(
"\r\n > welcome to node-chat!"
+ "\r\n > " + count + " other people are connected at this time."
+ "\r\n > please write your name and press enter: "
);
count++;
// 代表當(dāng)前連接的昵稱
var nickname;
console.log(conn);
conn.on('data', function (data) {
// 刪除\r\n
// data = data.replace('\r\n', ' ');
// 當(dāng)前注冊的昵稱不存在
if (!nickname) {
// 用戶名存在
if(users[data]) {
conn.write('nickname in use');
return;
} else {
// 用戶名給nickname
nickname = data;
users[nickname] = conn;
for (var i in users) {
users[i].write('\r\n > ' + nickname + ' join our room \r\n > I: ');
}
}
} else {
// 開始聊天
for (var i in users) {
if (i != nickname) {
users[i].write('\r\n > ' + nickname + ': ' + data);
}
}
}
});
conn.on('close', function () {
count--;
});
conn.setEncoding('utf8');
});
server.listen(3000, function () {
console.log('服務(wù)器監(jiān)聽端口3000');
})
運(yùn)行截圖:
終端:

telnet 這里截取了兩個(gè)網(wǎng)友

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Node.js創(chuàng)建Web、TCP服務(wù)器
- Nodejs創(chuàng)建TCP服務(wù)器 - king0222
- Nodejs之TCP服務(wù)端與客戶端聊天程序詳解
- node.js 用socket實(shí)現(xiàn)聊天的示例代碼
- Nodejs實(shí)現(xiàn)多房間簡易聊天室功能
- AngularJS+Node.js實(shí)現(xiàn)在線聊天室
- 使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
- nodejs實(shí)現(xiàn)的一個(gè)簡單聊天室功能分享
- WebSocket+node.js創(chuàng)建即時(shí)通信的Web聊天服務(wù)器
- nodejs簡單實(shí)現(xiàn)TCP服務(wù)器端和客戶端的聊天功能示例
相關(guān)文章
nodejs對項(xiàng)目下所有空文件夾創(chuàng)建gitkeep的方法
這篇文章主要介紹了nodejs對項(xiàng)目下所有空文件夾創(chuàng)建gitkeep的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
Nodejs+express+ejs簡單使用實(shí)例代碼
本篇文章主要介紹了Nodejs+express+ejs簡單使用實(shí)例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09
Nodejs高擴(kuò)展性的模板引擎 functmpl簡介
本文給大家分享的是一款nodejs高擴(kuò)展性的模板引擎functmpl的簡單介紹以及用法詳解,有需要的小伙伴可以參考下2017-02-02
nodejs中函數(shù)的調(diào)用實(shí)例詳解
本文通過實(shí)例代碼給大家介紹了nodejs函數(shù)的調(diào)用,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-10-10
node.js 利用流實(shí)現(xiàn)讀寫同步,邊讀邊寫的方法
下面小編就為大家?guī)硪黄猲ode.js 利用流實(shí)現(xiàn)讀寫同步,邊讀邊寫的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09
node.js學(xué)習(xí)筆記之koa框架和簡單爬蟲練習(xí)
這篇文章主要介紹了node.js學(xué)習(xí)筆記之koa框架和簡單爬蟲練習(xí),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-12-12

