Node.js笔记(三)局域网聊天室构建1

embedded/2024/11/24 8:55:17/

目标

用户与服务端建立通信,服务端能检测到用户端的连接信息

代码

  • JS部分<chatroom.js>
const express = require('express')
const http = require('http')
const {Server} = require('socket.io')const app = express()                                
const server = http.createServer(app)
const io = new Server(server)                              \\不要写错app.use(express.static(__dirname))					 \\静态托管必须要写
io.on('connect',(socket)=>{console.log('an user connected')socket.on('disconnect',()=>{console.log("an user disconnected")})
})const port =3001
server.listen(port,()=>{console.log(`server is running at http://localhost:${port}`)\\反引号字符串模板
})
  • Html部分<index.html>
<!DOCTYPE html>
<html><head><script src="/socket.io/socket.io.js"></script>\\不能遗漏,这里是让浏览器提前加载socket.io库</head><body><h1>Chat Room</h1><input id="inputtext" placeholder="Enter your message"><button id="inputbtn">Send</button><script>const socket = io()\\浏览器与服务端建立连接的关键</script></body>
</html>

效果

  • JS部分
    输入node chatroom.js运行
    在这里插入图片描述
  • Html部分
    在这里插入图片描述

http://www.ppmy.cn/embedded/140082.html

相关文章

WPF里面的C1FlexGrid表格控件添加RadioButton单选

如下&#xff0c;普通表单不会这么麻烦&#xff0c;我这边还根据数据控制了是否可以编辑 <c1:Column Header"评审结果" Binding"{Binding ReviewResult}" ColumnName"ReviewResult" Width"200"> <c1:Column.CellTemplate&g…

旋转向量v和旋转矩阵R

旋转向量v和旋转矩阵R 旋转向量 v 和旋转矩阵 R 是三维空间中描述旋转的两种数学表示方式。两者的关系通过 Rodrigues 公式 建立。 1. 旋转向量v 2. 旋转矩阵R 3. 旋转向量v和旋转矩阵R的关系 两者通过 Rodrigues 公式 和特殊的矩阵运算互相转换&#xff1a; 4. 代码示例 1…

React项目设置不同模式(开发development与生产production)——cross-env与env-cmd详解

在React中使用Create React App&#xff08;CRA&#xff09;构建项目时&#xff0c;可以通过以下步骤来开启生产模式&#xff1a; 一、安装Create React App&#xff08;如尚未安装&#xff09; 确保已经安装了Node.js和npm。Node.js通常自带npm包管理器。全局安装Create Rea…

iic协议

IIC&#xff08;Inter-Integrated Circuit&#xff09;协议&#xff0c;也被称为I2C协议&#xff0c;是一种由荷兰的PHILIPS公司&#xff08;现为NXP半导体公司&#xff09;开发的简单、高效的通信协议。以下是关于IIC协议的详细介绍&#xff1a; 一、IIC协议概述 定义&#…

BEV:显示相机视角转换-----FastBEV/IPM与LSS

一、背景 BEV方案中&#xff0c;将图像视角转换到BEV视角的方法对模型性能影响较大&#xff0c;FastBEV的速度较快&#xff0c;但投影效果上限不高&#xff0c;LSS投影上限较高&#xff0c;但速度较慢 &#xff08;耗时相对较高&#xff09;。是否有折中的方案&#xff0c;在耗…

设计模式-创建型-工厂模式

1.概念 由多个不同的工厂来替我们完成生产对象的操作&#xff0c;不同的工厂生产不同的对象 2.作用 不再会违背OCP原则&#xff0c;要添加新的产品类会相应添加对应的工厂类&#xff0c;不会修改到已有工厂的代码。 调用者不再关心产品的创建&#xff0c;实现职责分离 3.应…

【MATLAB源码-第221期】基于matlab的Massive-MIMO误码率随着接收天线变化仿真,对比ZF MMSE MRC三种检测算法。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 1. 系统背景与目标 无线通信系统的发展极大地推动了现代通信技术的进步&#xff0c;从移动通信到无线局域网&#xff0c;甚至是物联网&#xff0c;均依赖于无线通信系统的高效和可靠性。在无线通信系统中&#xff0c;核心目标…

【游戏开发】【Unity】基本的Unity概念

Unity是一款非常流行的游戏开发引擎,它支持跨平台、组件化设计,并使用C#作为脚本语言,让开发者能够轻松创建复杂而灵活的游戏系统。在Unity的开发中,我们常常会使用到资源、场景、游戏对象、组件、脚本、预制件以及包等概念。本文将详细介绍这些核心要素,帮助你更好地理解…