最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js制作簡(jiǎn)單聊天室

 更新時(shí)間:2017年01月12日 11:46:51   作者:光明大神棍  
這篇文章主要為大家詳細(xì)介紹了Node.js制作簡(jiǎn)單聊天室的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

看了TCP的有關(guān)知識(shí),寫了個(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)前注冊(cè)的昵稱不存在
    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)友

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解node.js平臺(tái)下Express的session與cookie模塊包的配置

    詳解node.js平臺(tái)下Express的session與cookie模塊包的配置

    本篇文章主要介紹了詳解node.js平臺(tái)下Express的session與cookie模塊包的配置,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-04-04
  • MQTT Client實(shí)現(xiàn)消息推送功能的方法詳解

    MQTT Client實(shí)現(xiàn)消息推送功能的方法詳解

    這篇文章主要介紹了MQTT Client實(shí)現(xiàn)消息推送功能的方法,結(jié)合實(shí)例形式詳細(xì)分析了MQTT Client實(shí)現(xiàn)消息推送的基本原理、實(shí)現(xiàn)方法與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2023-05-05
  • 基于NodeJS的前后端分離的思考與實(shí)踐(二)模版探索

    基于NodeJS的前后端分離的思考與實(shí)踐(二)模版探索

    在傳統(tǒng)的開發(fā)模式中,瀏覽器端與服務(wù)器端是由不同的前后端兩個(gè)團(tuán)隊(duì)開發(fā),但是模版卻又在這兩者中間的模糊地帶。因此模版上面總不可避免的越來越多復(fù)雜邏輯,最終難以維護(hù)。
    2014-09-09
  • 修改npm全局安裝模式的路徑方法

    修改npm全局安裝模式的路徑方法

    今天小編就為大家分享一篇修改npm全局安裝模式的路徑方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 深入理解Node內(nèi)建模塊和對(duì)象

    深入理解Node內(nèi)建模塊和對(duì)象

    在node核心中有些內(nèi)建模塊,使用這些模塊可以操作系統(tǒng),文件和網(wǎng)絡(luò),這篇文章主要介紹了深入理解Node內(nèi)建模塊和對(duì)象,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Node.js本地文件操作之文件拷貝與目錄遍歷的方法

    Node.js本地文件操作之文件拷貝與目錄遍歷的方法

    這篇文章主要介紹了Node.js本地文件操作之文件拷貝與目錄遍歷的方法,拷貝用到了Node的文件API,遍歷則舉了一個(gè)異步API實(shí)現(xiàn)的形式(Node的一大特點(diǎn)),需要的朋友可以參考下
    2016-02-02
  • node.js中module.exports與exports用法上的區(qū)別

    node.js中module.exports與exports用法上的區(qū)別

    Node.js 引入了模塊(Module)概念,一個(gè)模塊可以通過module.exports 或 exports 將函數(shù)、變量等導(dǎo)出,以使其它 JavaScript 腳本通過require() 函數(shù)引入并使用。那么node.js中module.exports與exports有什么區(qū)別呢?下面小編給大家解答下
    2016-09-09
  • koa框架的原理、功能,與基本使用方法概述

    koa框架的原理、功能,與基本使用方法概述

    這篇文章主要介紹了koa框架的原理、功能,與基本使用方法,結(jié)合實(shí)例形式分析了koa框架的基本功能、原理、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2023-04-04
  • express+multer上傳圖片打開亂碼問題及解決

    express+multer上傳圖片打開亂碼問題及解決

    這篇文章主要介紹了express+multer上傳圖片打開亂碼問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Egret引擎開發(fā)指南之發(fā)布項(xiàng)目

    Egret引擎開發(fā)指南之發(fā)布項(xiàng)目

    當(dāng)我們制作完成一個(gè)項(xiàng)目后,我們需要把項(xiàng)目發(fā)布為正式版本,并放到網(wǎng)上提供給玩家。那么在egret中簡(jiǎn)單的使用build命令并非打包最終的正式版文件。你還需要進(jìn)行最終的發(fā)布操作。
    2014-09-09

最新評(píng)論

资阳市| 肇庆市| 乌鲁木齐市| 兴隆县| 法库县| 二连浩特市| 宜都市| 奉贤区| 衢州市| 灵丘县| 日喀则市| 唐山市| 榆林市| 正阳县| 米脂县| 南溪县| 砀山县| 阿克陶县| 英超| 水城县| 铜鼓县| 双城市| 温泉县| 西平县| 历史| 红原县| 通化县| 璧山县| 四子王旗| 伊金霍洛旗| 报价| 广水市| 焉耆| 辽阳市| 桑植县| 白水县| 平和县| 巴中市| 泾源县| 庆云县| 白朗县|