Express入门必学三件套:路由、中间件、模板引擎全解析

一、环境搭建四步曲

  1. 安装Node.js
    • 官网下载LTS版本,验证安装:node -v && npm -v

  2. 初始化项目

    bash 复制代码
    mkdir my-express-app && cd my-express-app  
    npm init -y  # 快速生成package.json
  3. 安装Express

    bash 复制代码
    npm install express --save  # 生产依赖
  4. 创建入口文件

    javascript 复制代码
    // app.js
    const express = require('express');
    const app = express();
    app.listen(3000, () => console.log('Server running on port 3000'));

二、核心功能实战演示

场景:构建用户注册API(支持JSON和表单数据)

  1. 路由监听

    javascript 复制代码
    // GET请求处理
    app.get('/api/users', (req, res) => {
      res.json([{id: 1, name: 'John'}]); // 返回JSON数据
    });
    
    // POST请求处理(需中间件解析请求体)
    app.use(express.json()); // 解析JSON
    app.use(express.urlencoded({ extended: true })); // 解析表单
    
    app.post('/api/users', (req, res) => {
      console.log(req.body); // 获取客户端数据
      res.status(201).send('User created!');
    });
  2. 动态路由参数

    javascript 复制代码
    app.get('/users/:id', (req, res) => {
      res.send(`User ID: ${req.params.id}`); // 获取URL参数
    });
  3. 静态资源托管

    javascript 复制代码
    app.use('/public', express.static('public')); // 开放public目录
相关推荐
码事漫谈1 小时前
黄仁勋被裁第一天,就收到了橄榄枝
后端
金銀銅鐵2 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
皮皮林5513 小时前
比 Xshell 还好用的 SSH 客户端神器,MobaXterm 太爱了!
后端
我不会起名字3224 小时前
会话缓存失效排查:区分 Redis 失效与节点广播
redis·后端·go·即时通讯·im·故障排查
深入云栈6 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
JackJiang6 小时前
IM踩坑:聊天消息ID怎么设计?一个UUID搞不定,我用双ID解决
后端·架构
开心猴爷6 小时前
iOS 上架 App 流程
后端·ios
code_Bo6 小时前
不只命令行:我把跨 Agent 会话同步做成了桌面应用
前端·javascript·后端
kyriewen7 小时前
AI 能把页面写出来,为什么改个需求就开始崩?
前端·javascript·人工智能
OpsEye7 小时前
同一套用例跑两个大模型接口,差异到底出在哪
javascript·ai编程