【NodeJS】005- NodeJS的NVM与express框架
1.NVM介绍与使用
1.介绍
nvm 全称 Node Version Manager
顾名思义它是用来管理 node 版本的工具,方便切换不同版本的Node.js
2.使用
nvm 的使用非常的简单,跟 npm 的使用方法类似
3.下载安装
首先先下载 nvm,下载地址 https://github.com/coreybutler/nvm-windows/releases ,
选择 nvm-setup.exe
下载即可
4.常用命令
命令 | 说明 |
nvm list available | 显示所有可以下载的 Node.js 版本 |
nvm list | 显示已安装的版本 |
nvm install 18.12.1 | 安装 18.12.1 版本的 Node.js |
nvm install latest | 安装最新版的 Node.js |
nvm uninstall 18.12.1 | 删除某个版本的 Node.js |
nvm use 18.12.1 | 切换 18.12.1 的 Node.js |
2.express框架介绍
1.express介绍
express 是一个基于 Node.js 平台的极简、灵活的 WEB 应用开发框架,官方网址: https://www.expressjs.com.cn/
简单来说,express 是一个封装好的工具包,封装了很多功能,便于我们开发 WEB 应用(HTTP 服务)
2. express使用
2.1 express 下载
express 本身是一个 npm 包,所以可以通过 npm 安装
npm init
npm i express
2.2 express 初体验
1.创建JS文件
//1. 导入 express
const express = require('express');
//2. 创建应用对象
const app = express();
//3. 创建路由规则
app.get('/home', (req, res) => {res.end('hello express server');
});
//4. 监听端口 启动服务
app.listen(3000, () =>{console.log('服务已经启动, 端口监听为 3000...');
});
2. 命令行下执行该脚本
1. node <文件名>
# 或者
nodemon <文件名>
3.然后在浏览器就可以访问 http://127.0.0.1:3000/home
3.express 路由
3.1.什么是路由
官方定义: 路由确定了应用程序如何响应客户端对特定端点的请求
3.2 路由的使用
路由的是有 请求方法
, 路径
和 回调函数
组成
app.<method>(path,callback)
代码示例
// 1.导入express框架
const express = require('express')// 2.创建express对象
const app = express()// 3.创建get请求路由
app.get('/login', (req, res) => {res.send('登录页面')
})// 4.创建post请求路由
app.post('/registry', (req, res) => {res.send('注册页面')
})// 5.首页路由
app.get('/', (req, res) => {res.send('首页')
})// 6. 匹配所有的方法
app.all('/search', (req, res) => {res.send('1 秒钟为您找到相关结果约 100,000,000 个');
})// 7. 自定义404路由
app.all('*', (req, res) => {res.send('404页面')
})app.listen('8080', () => {console.log('服务器启动成功')
})
3.3 获取请求参数
express 框架封装了一些 API 来方便获取请求报文中的数据,并且兼容原生 HTTP 模块的获取方式
代码示例
const express = require('express')
const app = express()
app.get('/request', (req, res) => {// 原生操作// console.log(req.method);// console.log(req.url);// console.log(req.httpVersion);// console.log(req.headers);// express操作console.log(req.path);console.log(req.query); // 查询字符串 相对重要// 获取 ipconsole.log(req.ip);// 获取请求头console.log(req.get('host'));res.send
相关文章:
【NodeJS】005- NodeJS的NVM与express框架
1.NVM介绍与使用 1.介绍 nvm 全称 Node Version Manager 顾名思义它是用来管理 node 版本的工具,方便切换不同版本的Node.js 2.使用 nvm 的使用非常的简单,跟 npm 的使用方法类似 3.下载安装 首先先下载 nvm,下载地址 https://github.com/coreybutler/nvm-windows/rel…...
pandas使用read_csv时报错解决
问题描述: 在使用read_csv时报错: UnicodeDecodeError: utf-8 codec cant decode byte 0xc9 in position 9451: invalid continuation byte 或者: UnicodeDecodeError: gb2312 codec cant decode byte 0x88 in position 68296: illegal m…...

Optimism的挑战期
1. 引言 前序博客: Optimism的Fault proof 用户将资产从OP主网转移到以太坊主网时需要等待一周的时间。这段时间称为挑战期,有助于保护 OP 主网上存储的资产。 而OP测试网的挑战期仅为60秒,以简化开发过程。 2. OP与L1数据交互 L1…...

Linux——安装MySQL
1、安装mysql8.0.35 1.1、安装步骤 1.更新包列表,首先,确保您的系统已更新到最新状态。运行以下命令来更新包列表和安装最新的软件包: sudo apt update sudo apt upgrade2.安装MySQL服务器:运行以下命令来安装MySQL服务器&…...

java常量和kotlin常量
在java中使用final声明常量在kotlin中使用const val声明常量 常量在编译为字节码后会直接把调用常量的地方直接替换为常量值,示例如下: public class ConstDemo {public static final String NAME "Even";private static final int ID 100…...
Python学习笔记--创建最简单的自定义异常类
在Python中,当创建一个函数时,它应该执行一些操作或返回一些值。如果函数为空,则没有实际的操作或返回值,这是不符合函数设计的初衷的。因此,在Python中,函数体不能为空,必须至少包含一个语句&a…...

2024年,AI 掀起数据与分析市场的新风暴
2024 年伊始,Kyligence 联合创始人兼 CEO 韩卿在其公司内部的飞书订阅号发表了多篇 Rethink Data & Analytics 的内部信,分享了对数据与分析行业的一些战略思考,尤其是 AI 带来的各种变化和革命,是如何深刻地影响这个行业乃至…...

小程序软件测试应该怎么做?有什么作用?
近年来,随着移动互联网的快速发展,小程序软件的使用越来越广泛。无论是企业推广还是个人创作,小程序软件都具备了很大的潜力和市场空间。然而,在发布之前,进行充分的测试是至关重要的,以确保用户体验的顺畅…...
springboot2.2.9整合kafka之KafkaListener实现原理
1、开启kafka的注解EnableKafka 通过开启kafka注解可以看到Import的类KafkaListenerConfigurationSelector加载一个配置类KafkaBootstrapConfiguration,而此类中有两个重要的类: KafkaListenerAnnotationBeanPostProcessor、KafkaListenerEndpointRegistry 2、Kaf…...

数据结构day7
1.思维导图 1.二叉树递归创建 2.二叉树先中后序遍历 3.二叉树计算节点 4.二叉树计算深度。 5.编程实现快速排序降序...

cleanmymacX有必要买吗
CleanMyMac X是一款被广泛推荐的Mac电脑清理软件。以下是关于是否购买CleanMyMac X的几个关键点: 软件功能:CleanMyMac X具备多项功能,包括但不限于系统垃圾清理、缓存清理、恶意软件移除、隐私保护等。这些功能有助于保持Mac电脑的清洁和性能…...

智慧文旅:打造无缝旅游体验的关键
随着科技的快速发展和消费者需求的不断升级,旅游业正面临着前所未有的变革压力。智慧文旅作为数字化转型的重要领域,旨在通过智能化、数据化手段为游客提供更加优质、便捷、个性化的服务,打造无缝的旅游体验。本文将深入探讨智慧文旅在打造无…...

C语言 | 求最大/小值小技巧:fmax、fmin函数
如果你只是因为不想用C语言手写max、min函数,就直接去用iostream中的max、min函数的话,这篇文章可能会有些许帮助。 😇 fmax、fmin函数用于确定两个指定值的较大/较小值。 头文件 math.h(或者cmath)。 定义 double …...

【深度学习每日小知识】Model Accuracy 模型准确率
Model Accuracy 模型准确率 模型准确性是衡量机器学习 (ML) 模型基于数据做出预测或决策的能力的指标。它是用于评估 ML 模型性能的常用指标,可用于比较不同模型的性能或评估特定模型对于给定任务的有效性。 有多种不同的方法来衡量模型的准确性,具体取…...

智能AI系统开发,专业软件硬件物联网开发公司,探索未来科技新纪元
在信息时代,人工智能(AI)、物联网等前沿技术日益受到人们的关注。智能AI系统、专业软件硬件物联网开发公司应运而生。今天,我们将向大家介绍一家位于XX城的专业公司,致力于智能AI系统开发和软件硬件物联网领域的创新研…...

第七篇:node中间件详解
🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 📘 引言: &#…...

Jenkins自动化打包
Jenkins自动化打包 下载安装 我们直接从官网https://www.jenkins.io/download/ 下载所需的Jenkins文件 如上图所示, 选择Windows版本,下面就是一路安装即可,需要注意的是,选择作为系统服务选项, 不要自己设置账号密码登录. Web配置 安装完根据提示在浏览器打开 http://lo…...

【服务端性能测试】性能测试策略如何做
一、需求收集 先需要确认本次测试目的是什么,然后再看我们需要用什么参数来判断这个目的是否能够达成。 1.1 业务性能指标参考: TPS、QPS、RT、请求成功率(一般请求成功率>99.99%) 1.2 硬件性能指标参考: 即服…...

透明拼接屏造型:多样拼接与影响因素
透明拼接屏,以其独特的透明显示效果和灵活的拼接方式,在现代显示领域中独树一帜。其造型多样,包括横屏拼接、竖屏拼接、异形拼接以及定制拼接等多种方式,满足了不同场景和应用的需求。尼伽小编将详细介绍这些拼接方式,…...
c# 对路径的访问被拒绝
c#写入一个文件,报错: c# 对路径的访问被拒绝 解决方法: 检查文件路径和目录权限: 确保你的应用程序有权限写入指定的文件或目录。在某些情况下,你可能需要以管理员身份运行应用程序或更改文件/目录的权限。 确保目…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...

PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲
文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...