Node.js入门实战:从安装到搭建Express Web服务
这次我们来看一个老牌但绕不开的话题Node.js 入门。市面上的 Node.js 教程很多但大部分要么讲得太散要么默认你已经有了一整套可用的开发环境。本文换一个思路按 1 小时能跑完的节奏从零开始下载安装 Node.js、验证环境、用内置模块写一个最小 Web 服务再用 Express 把 Web 应用搭起来最后通过接口验证整个流程。整个过程不需要 GPU不需要大型开发环境只需要一台能装普通软件的电脑、一个编辑器和一个浏览器。先说结论Node.js 不是一个框架也不是一门新语言它是一个基于 Chrome V8 引擎的 JavaScript 运行时让 JavaScript 可以脱离浏览器在服务端运行。它最核心的三个特点是事件驱动、非阻塞 I/O、自带 npm 包管理器。因为是事件驱动它在处理大量网络请求时可以用较少的系统资源承载较高的并发因为自带 npm你可以用一行命令安装几十万个第三方模块Web 服务、接口、自动化脚本、工具链都非常容易拼出来。更关键的是前后端用同一种语言对前端开发者来说这是最平滑的一条后端学习路径。本文将按 10 个章节展开带读者完成下面这些实操安装 Node.js LTS 并验证用 nvm 做多版本管理配置 npm 镜像用内置 http 模块写出第一个能访问的页面用 Express 搭建带路由的 Web 应用用 curl 和浏览器验证 GET/POST 接口观察 Node 进程的资源占用把常见的安装报错和运行报错逐个排查掉。最终你会得到一套可以继续扩展的 Node.js Web 应用骨架。1. Node.js 核心能力速览先把核心能力整理成一张表方便快速判断该不该继续往下看能力项说明技术类型JavaScript 运行时 / 服务端开发环境核心组件Chrome V8 引擎、内置模块、npm主要能力HTTP Web 服务、REST API、静态文件服务、CLI 工具、自动化脚本支持平台Windows、Linux、macOS较新的 LTS 版本建议在 64 位系统上使用硬件要求常规 CPU 和内存即可不需要 GPU安装体积官网安装包通常几十 MB 级别实际占用以官网说明为准包管理npm可配置镜像源加速安装版本管理nvm / nvm-windows 多版本切换推荐学习组合Node.js LTS VS Code npm Express典型场景Web 后端 API、前端工具链、脚本自动化、实时通信这里要重点说明的是Node.js 本身没有“显存”这类概念它是一个纯 CPU/内存型运行时。普通课程实验、本地 Web 应用、接口调试对电脑配置要求很低。哪怕是一台嵌入式开发板或者低配云服务器也可以安装并运行 Node.js 服务。这也是它作为入门技术栈的优势。从版本选择来看官网一般会区分 LTS 和 Current 两个版本。LTS 是长期维护版适合生产环境和稳定学习Current 包含最新特性但更新节奏更快。对于本教程建议安装 LTS。如果读者需要同时维护多个项目或者某些项目对 Node 版本有硬性要求可以采用 nvm 来做版本切换这一点会在第 4 章详细演示。2. Node.js 能做什么适用场景与学习边界Node.js 适合这些人想补后端知识的前端开发准备做全栈项目但希望用同一种语言的学生需要快速搭一个接口原型或自动化脚本的测试、运维同学。它解决的核心问题是让 JavaScript 从浏览器走到服务器端。前端开发写的语言后端能继续用前端工程师既写页面又写接口团队沟通成本会低很多。具体到 Web 开发Node.js 可以用内置 http 模块直接提供 HTTP 服务也可以用 Express、Koa、Fastify 这类框架快速组织路由和中间件。除了 Web 服务Node.js 在现代化前端工具链里也是基础依赖Vite、Webpack、Tailwind CLI 等都依赖 Node.js 环境。换句话说即使你现在只写前端后端项目也不用只要用到这些构建工具本机仍然需要一个可用的 Node.js尤其是近年来前端脚手架对 Node 版本的最低要求越来越高经常出现提示 “a later version of Node.js is required” 的情况原因就是本机版本太老。但它也有限制。Node.js 默认是单线程事件循环适合高 I/O、高并发的网络请求却不适合纯粹的 CPU 密集型计算任务。比如海量图片处理、视频转码、复杂数据结构运算直接在主线程里跑会把事件循环阻塞导致其他请求排队。这类任务通常需要 Worker Threads、消息队列或者直接用 Go、Rust、C 等更合适的方案实现。另外Node.js 生态虽然丰富但很多能力来自第三方 npm 包使用前需要关注包来源、许可证、漏洞历史生产环境要定期执行npm audit做安全检查。涉及用户数据、密钥、版权素材的功能要明确授权边界不要把敏感信息写进代码或提交到公开仓库。3. Node.js 安装前的环境准备安装 Node.js 之前先确认三件事操作系统、旧版本残留、编辑器。本教程以 Windows 为主要演示环境但 Linux 和 macOS 的安装思路完全一致差别只在于版本切换工具不同。建议使用 Windows 10/11 的 64 位系统因为最新 LTS 版本对旧系统支持有限。从材料来看很多用户尝试在 Windows 7 上安装新版 Node.js会有兼容性问题更容易遇到后续 npm 包无法运行的情况如果还在使用老系统更稳妥的判断是优先升级系统或只使用旧版 Node.js但要接受新依赖不兼容和安全风险。第二检查本机是否已经安装过 Node.js。打开终端执行node -v npm -v如果两条命令都能正常打印版本号说明环境已存在。这里要区分一个常见误区系统里有很多软件会自带 Node.js 环境比如部分桌面客户端、前端脚手架它们内置的 Node 是给自身运行用的不一定会注册到全局 PATH。如果你运行某个工具时提示node.js not found (please save below and restart)通常不是说你没装 Node而是该工具在当前 PATH 里找不到全局 Node需要先把 Node 装好并把它加入环境变量再重启工具。第三安装编辑器。VS Code 是免费且社区插件齐全的选择装好后安装 Chinese Language Pack、ES7 React/React Native snippets 等扩展即可。如果暂时不想安装额外编辑器用系统自带记事本也能完成本教程但体验会差一些不推荐。最后整理磁盘空间和端口。Node.js 安装包很小普通项目依赖也只在几百 MB 级别不需要特殊准备磁盘。端口方面本教程会使用 3000 端口启动前可以先用命令检查 3000 端口是否被占用netstat -ano | findstr :3000如果有输出说明端口被其他程序占用可以换用 3001 或其他空闲端口。4. Node.js 安装与版本管理从零到可用4.1 方法一官网直接安装最简单的安装方式是访问 Node.js 官网 nodejs.org下载 LTS 版安装包。下载完成后双击安装一路 Next在安装到选择组件那一步时确认Add to PATH已经被勾选这一步非常关键。很多新手装完执行node -v提示“不是内部或外部命令”原因就是没有加入 PATH或者安装后没有重开终端。安装完成后新开一个终端窗口执行node -v npm -v能同时看到两个版本号说明环境已经可用。如果出现“无法将 node 识别为 cmdlet、函数、脚本文件”之类的提示先重启终端再试如果仍然不行检查 Windows 环境变量里的 PATH 是否包含 Node.js 安装目录。4.2 方法二用 nvm 管理多版本如果读者手里有多个项目不同项目要求的 Node 版本不一样推荐用 nvm 或 nvm-windows 管理版本。这种方式的好处是先安装一个统一的 nvm 管理工具再通过命令安装任意版本的 Node.js随时切换不用反复卸载安装。这类场景在实际开发里非常典型比如有人执行nvm install 22.13.1后一直停在Downloading node.js version 22.13或者执行nvm install 24.19.0时提示Node.js v24.19.0 is not yet released or is not available这些问题大多和网络或版本号有关排查方式在常见问题章节会展开。安装 nvm 后打开终端执行nvm list available先看远程有哪些版本可用。以 Node.js 22 为例安装和切换命令如下nvm install 22 nvm use 22执行node -v确认当前已经是目标版本。如果某个项目需要切换到 Node.js 20nvm install 20 nvm use 20nvm 会在不同版本之间切换全局 PATH 中的 node 指向比较适合做版本回归测试。如果 nvm 下载 Node.js 时一直卡住可以在 nvm 安装目录下的 settings.txt 里配置镜像源node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: https://npmmirror.com/mirrors/npm/配置完成后重新执行 nvm install一般可以明显提升下载速度。需要注意不同版本 nvm 对配置项的解析可能有差异如果配置文件不生效建议去对应项目文档确认当前版本的配置格式不要盲目照抄。4.3 配置 npm 镜像安装完 Node.js 后npm 默认访问

相关新闻

DeepSeek API 开发实战:从接入、调优到避坑指南

DeepSeek API 开发实战:从接入、调优到避坑指南

最近 DeepSeek 有两组数据刷屏:API 营收过去 7 个月做到 4.75 亿,同比大概涨了 10 倍,API 毛利率 82.9%。对普通用户来说这只是个商业新闻,但对开发者来说,这直接关系到 API 定价空间、服务稳定性、模型迭代节奏&#…

2026/8/30 2:40:57 阅读更多 →
llms.txt部署实战:OpenAI爬虫读取7次背后的逻辑与优化指南

llms.txt部署实战:OpenAI爬虫读取7次背后的逻辑与优化指南

llms.txt 这个文件,最近因为一个实验结果又回到了我的视线里。83 个网站部署了 llms.txt 之后,12 周内 OpenAI 的爬虫读取了 7 次。这个数字乍一看不算高,但它真正想说明的是:OpenAI 爬虫确实会识别并反复读取这个文件&#xff0c…

2026/8/30 2:40:57 阅读更多 →
OFDM系统PAPR抑制:PTS与SLM工程实践与优化

OFDM系统PAPR抑制:PTS与SLM工程实践与优化

简介:本资源是一套面向无线通信领域研究者与工程实践者的PAPR抑制技术实现源码,聚焦于PTS(部分传输序列)和SLM(选择性映射)两类主流降低峰值平均功率比的方法,并集成其核心优化策略。资源适用于…

2026/8/30 2:40:57 阅读更多 →

最新新闻

从砷超标133倍事件看水质检测与数据处理全流程

从砷超标133倍事件看水质检测与数据处理全流程

如果你最近关注过爱尔兰的环境新闻,大概率会看到这样一条消息:在 Aughinish 地区附近的水体中,检测出了砷含量超标,数值达到了法定限值的 133 倍。乍一看,这只是一个让人皱眉的环保新闻,但如果你是一名开发…

2026/8/30 3:40:13 阅读更多 →
电子信息领域科技创新与产业创新深度融合路径解析

电子信息领域科技创新与产业创新深度融合路径解析

先说明一点:我这里写的不是CEIC2026现场的逐字稿复述,而是围绕“清华大学汪玉:电子信息领域科技创新与产业创新深度融合路径研究”这个题目展开的系统思考。前几年在芯片、电子设计、算法工程这些领域里,我反复听到同一种抱怨&…

2026/8/30 3:40:13 阅读更多 →
拼多多后端36W+ offer面经:高并发与系统设计核心考点解析

拼多多后端36W+ offer面经:高并发与系统设计核心考点解析

1. 项目概述:36W面试邀请背后的真实诉求拼多多后端岗给到36W的薪资包,在当下的市场环境里绝对属于有分量的区间。能在简历筛选阶段被相中,又在五轮左右的面试里被层层拷问,最后还能拿到这个数,说明候选人不仅要基础扎实…

2026/8/30 3:40:13 阅读更多 →
用Python和OCR搭建本地音游成绩复盘工具

用Python和OCR搭建本地音游成绩复盘工具

很多舞萌DX玩家看到“明年才能打舞萌了”这句话,第一反应大多是无奈:机台不在身边、门店搬迁、学业工作排满,或者单纯是排不上机。既然短期内没法在线下痛快打,与其让手感空白,不如把这段时间用来做更值的事——把手头…

2026/8/30 3:40:13 阅读更多 →
从打游戏到写Python:兴趣驱动的编程实战路线

从打游戏到写Python:兴趣驱动的编程实战路线

“导员:你不是每天都在打游戏吗?怎么突然学会了Python啊!!!” 这句话放到大学宿舍里,大概率会被当成一句玩笑。但过去几年,我见过不少从游戏开始的 Python 学习者,最后反而比那些按…

2026/8/30 3:40:13 阅读更多 →
用Claude Code自动起草代码评审反馈,告别“隐形加班”

用Claude Code自动起草代码评审反馈,告别“隐形加班”

代码评审是很多开发者的“隐形加班”。看一份 diff 可能只需要五分钟,但把问题整理成一条条清晰、不伤人、又值得对方执行的反馈意见,往往要再花二十分钟。Claude Code 最近新增的“自动起草反馈”功能,瞄准的就是这个环节:让 AI …

2026/8/30 3:39:13 阅读更多 →

日新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

周新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/29 4:34:53 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/28 17:43:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/29 2:05:18 阅读更多 →