web建站教程
  1. 首页
  2. vuejs
  3. js
  4. 好玩
  5. AIGC工具
  6. 前端知识
  7. 百度echarts
  8. 更多
    php入门
    nodejs
    mockjs
    reactjs
    mysql
    wordpress
    织梦cms
    帝国cms
    git教程
    IT知识
    模板大全
    休息站
    手机应用

如何利用nodejs语法实现即时通讯

619 ℃

如何利用nodejs语法做一个即时通讯功能?下面web建站小编给大家简单介绍一下具体实现代码!

创建服务器

const app = require('express')();
const server = require('http').createServer(app);
const io = require('socket.io')(server);
const port = process.env.PORT || 3000;
 
server.listen(port, () => {
  console.log(`Server listening at http://localhost:${port}`);
});

监听连接和断开事件,发送消息

io.on('connection', (socket) => {
  console.log('a user connected');
  socket.on('disconnect', () => {
    console.log('user disconnected');
  });
  socket.on('chat message', (msg) => {
    console.log('message: ' + msg);
    io.emit('chat message', msg);
  });
});

客户端页面代码

<html>
  <head>
    <title>Chat Room</title>
  </head>
  <body>
    <ul id="messages"></ul>
    <form action="">
      <input id="m" autocomplete="off" /><button>Send</button>
    </form>
    <script src="/socket.io/socket.io.js"></script>
    <script>
      const socket = io();
      const form = document.querySelector('form');
      const input = document.querySelector('#m');
      const messages = document.querySelector('#messages');
 
      form.addEventListener('submit', (e) => {
        e.preventDefault(); // 防止页面跳转
        socket.emit('chat message', input.value); // 将消息发送给服务器
        input.value = ''; // 清空消息框
        return false;
      });
 
      socket.on('chat message', (msg) => {
        const li = document.createElement('li'); // 创建新条目
        li.textContent = msg; // 设置新条目的文本内容
        messages.appendChild(li); // 将新条目添加到列表中
      });
    </script>
  </body>
</html>

nodejs语法如何获取并解析请求地址

nodejs语法如何自动转换成js

nodejs如何实现删除数组元素

nodejs如何检查内存情况

nodejs如何利用Long-Polling实现实时发送数据

标签: nodejs语法 即时通讯

上面是“如何利用nodejs语法实现即时通讯”的全面内容,想了解更多关于 nodejs 内容,请继续关注web建站教程。

当前网址:https://ipkd.cn/webs_4505.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

当前位置: 网站首页 > nodejs
本文共计1187个字,预计阅读时长8分钟

基金从业资格考试题库

一站式备考基金从业资格考试,收录2021-2025年模拟题库!呱呱工具箱

AI工作站

收录全球3800+ 款各行各业AI应用,轻轻松松做事!

生活小工具

收录了万年历、老黄历、八字智能排盘等100+款小工具!生活小工具
上一篇: win7系统设置防火墙报0x8007042c错误解决方法
下一篇: 国家送给全国人民的9个免费神器(赶紧收藏)
x 打工人ai神器