第三天学习内容安排
1. 复习第二天的内容
- 基本模块:复习 Node.js 的核心模块(如
fs
、http
、path
等)的基本用法。 - 异步编程:回顾回调函数、Promise 和 async/await 的基本概念。
2. 学习 Express 框架
-
安装 Express:
npm install express
创建基本的 Express 应用:
const express = require('express'); const app = express(); const PORT = 3000; app.get('/', (req, res) => { res.send('Hello, Express!'); }); app.listen(PORT, () => { console.log(`Server is running on http://localhost:${PORT}`); });
3. 路由和中间件
-
定义路由:
app.get('/about', (req, res) => { res.send('About Page'); }); app.post('/submit', (req, res) => { res.send('Form Submitted'); });
-
使用中间件:
- 创建一个简单的中间件来记录请求信息:
app.use((req, res, next) => { console.log(`${req.method} ${req.url}`); next(); // 调用下一个中间件或路由处理程序 });
4. 处理请求体
-
使用
express.json()
和express.urlencoded()
中间件:app.use(express.json()); // 处理 JSON 格式的请求体 app.use(express.urlencoded({ extended: true })); // 处理 URL 编码的请求体
-
处理 POST 请求:
app.post('/data', (req, res) => { console.log(req.body); // 打印请求体 res.send('Data received'); });
5. 静态文件服务
-
提供静态文件:
app.use(express.static('public')); // 'public' 文件夹中的文件将被公开
-
创建一个
public
文件夹,并在其中放置一些静态文件(如 HTML、CSS、JavaScript 文件),然后访问这些文件。
6. 错误处理
- 定义错误处理中间件:
app.use((err, req, res, next) => { console.error(err.stack); res.status(500).send('Something broke!'); });
7. 实践练习
- 创建一个简单的 Express 应用,包含多个路由(如主页、关于页、提交表单页)。
- 实现一个表单,使用 POST 请求提交数据,并在服务器端处理请求体。
- 尝试提供静态文件,并在浏览器中访问这些文件。