express: 学习笔记
express 学习笔记
安装依赖
yarn add express
yarn add --dev nodemon
初始化项目
const express = require("express");
const app = express();
app.get("/", (req, res) => {
res.status(200).send("hello world");
});
app.listen(3000, () => {
console.log("Server is running on port 3000");
});
返回 text
app.get("/", (req, res) => {
res.status(200).send("hello world");
});
返回 json
app.get("/", (req, res) => {
res.status(200).json({ message: "Hello, World!" });
});
下载文件
app.get("/", (req, res) => {
res.download("package.json");
});
render HTML
记得安装
ejs
依赖
app.set("views", "./views");
app.set("view engine", "ejs");
app.get("/", (req, res) => {
res.render('index', { text: 'world' })
});
EJS 模板内容
<h1>Index View</h1>
<p>Hello <%= locals.text %> </p>
routes/user.js - CURD
const express = require("express");
const router = express.Router();
router.get("/", (req, res) => {
res.send("User list")
});
router.get("/:id", (req, res) => {
res.send(`User details for ID: ${req.params.id}`);
});
router.get("/edit/:id", (req, res) => {
res.send(`User edit form for ID: ${req.params.id}`);
});
router.post("/", (req, res) => {
res.send("User created")
});
router.put("/:id", (req, res) => {
res.send(`User updated for ID: ${req.params.id}`);
});
router.delete("/:id", (req, res) => {
res.send(`User deleted for ID: ${req.params.id}`);
// or
// res.status(204).send();
});
router.get("/new", (req, res) => {
res.send("User New Form")
});
module.exports = router;
加载 router
const userRouter = require('./routes/user');
app.use("/users", userRouter);
public 目录
app.use(express.static("public"));