Node.js Express
Express 是基于 Node.js HTTP 模块的 Web 应用框架,简化了路由、中间件、请求响应处理。
快速启动
js
import express from 'express'
const app = express()
app.get('/', (req, res) => res.send('get'))
app.post('/create', (req, res) => res.send('post'))
app.listen(3000, () => console.log('Listening on port 3000'))获取请求参数
js
app.use(express.json()) // POST JSON 解析中间件,否则 req.body 为 undefined
// GET 参数 → req.query
app.get('/', (req, res) => console.log(req.query))
// POST JSON → req.body
app.post('/create', (req, res) => console.log(req.body))
// 动态路由参数 → req.params
app.get('/:id', (req, res) => console.log(req.params.id))路由模块化
src/user.js — 路由模块:
js
import express from 'express'
const router = express.Router()
router.post('/login', (req, res) => res.send('login'))
router.post('/register', (req, res) => res.send('register'))
export default routerapp.js — 挂载路由:
js
import User from './src/user.js'
app.use(express.json())
app.use('/user', User) // /user/login → User 模块的 /loginExpress 核心特性
| 特性 | 说明 |
|---|---|
| 路由 | app.get/post/put/delete(path, handler) |
| 中间件 | app.use(middleware),在请求到达路由前/后执行 |
| 路由模块化 | express.Router() 拆分为独立模块 |
| 模板引擎 | 支持 EJS / Pug / Handlebars 等 |
| 中间件生态 | 身份验证、日志、静态文件等现成中间件 |