一、安装 Express
npm install express
二、创建一个简单的 Express 服务器
1. 引入 Express 并创建应用实例
const express = require("express");
const app = express();
2. 定义路由
2.1 处理 GET 请求
app.get("/", (req, res) => {
res.send("Hello, World!");
});
2.2 处理 POST 请求
app.post("/submit", (req, res) => {
res.send("Data submitted successfully");
});
3. 启动服务器
app.listen(3000, () => {
console.log("Server is running on port 3000");
});
三、使用路由参数
1. 定义带有路由参数的路由
app.get("/users/:userId", (req, res) => {
res.send(`User ID: ${req.params.userId}`);
});
四、使用查询参数
1. 获取查询参数
`req.query`:包含了 URL 中的查询参数。例如,对于 `/search?keyword=node&category=programming` 的请求,`req.query` 会是 `{ keyword: 'node', category: 'programming' }`。
app.get("/search", (req, res) => {
const query = req.query;
res.send(`Search query: ${JSON.stringify(query)}`);
});
五、使用中间件
1. 内置中间件
Express 提供了一些内置中间件,如 `express.json()` 和 `express.urlencoded()` 用于解析请求体。
app.use(express.json());
app.post("/api/data", (req, res) => {
res.json(req.body);
});
2. 自定义中间件
const myMiddleware = (req, res, next) => {
console.log("This is a custom middleware");
next();
};
app.use(myMiddleware);
app.get("/", (req, res) => {
res.send("Hello, World!");
});
六、使用静态文件服务
使用 `express.static()` 提供静态文件服务:
app.use(express.static("public"));
七、使用模板引擎
1. 配置和使用 EJS 模板引擎
npm install ejs
app.set("view engine", "ejs");
app.get("/", (req, res) => {
res.render("index", { title: "Home Page" });
});
八、错误处理
1. 基本错误处理
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send("Something broke!");
});