zoukankan      html  css  js  c++  java
  • 在终端聊天

    //服务端

    //创建服务器
    const net = require("net");
    cosnt server = net.createServer();
    server.listen(9000);

    const clients = [];

    //当用户连接到服务器以后
    server.on("connection",(client)=>{
    //将所有的客户端保存在一个数组中。当收到消息的时候,将这个消息给所有的用户发送过去
    client.id = clients.length;
    clients.push(client);
    console.log("有人连接进来了");

    //接受客户端传来的消息
    client.on("data",(data)=>{
    //然后将这个发送给所有用户
    clients.map((item)=>{
    if(item){
    item.write(data);
    }
    })
    })

    //当客户端断开连接的时候将他从数组中移除

    client.on("close",()=>{
    clients[client.id] = null;
    })
    })

    //客户端
    const net = require("net");
    //创建文件读写流
    const redline = require("readline");
    const client = new.Socket();

    const rl = readline.createInterface({
    input:process.stdin,
    output.process.stdout
    })

    //将buffer文件转化成字符串
    client.setEncoding("utf8")


    //参数1:端口号,参数2: ip

    client.connect(9000,"127.0.0.1",()=>{
    //接受服务端发来的消息
    client.on("data",(data)=>{
    console.log(data);
    })
    });

    //可以让我们在终端上进行文件的读写
    rl.on("line",(text)=>{
    //发送消息
    client.write(text);
    })

  • 相关阅读:
    C#中Excel的导入和导出的几种基本方式
    关于XML与类型Class的映射
    关于模板的相关注意事项
    OGRE 2.1 Windows 编译
    R6010 -abort() has been called
    VS2012 编译 Assimp
    C++ 并发消息队列
    Debian 安装下载工具软件
    Oracle SQL语句追踪
    记录自己学习网址
  • 原文地址:https://www.cnblogs.com/ht1997/p/10498440.html
Copyright © 2011-2022 走看看