# 🐍 第3课：自己的 API — 搭建 Flask 后端

**目标：** 用 Python Flask 写一个自己的 API 接口
**时长：** 2 小时
**前置：** 懂一点 Python 基础（变量、函数、字典）
**文件：** `app.py`（后端） + `test.html`（用来测试的前端）

---

## 📋 教学流程

| 时间 | 环节 | 内容 |
|------|------|------|
| 0-15min | 📺 回顾 | API 概念回顾 / 展示：自己写的后端也能返回数据 |
| 15-35min | 🐍 Python 热身 | 快速复习：字典→JSON / 函数 / pip 安装 |
| 35-60min | 🏗️ 搭建 Flask | 写第一个 Flask 应用 / 跑起来看看 |
| 60-80min | 🔌 写 API 接口 | 返回固定数据 / 接收参数 / 返回 JSON |
| 80-100min | 🔗 前端联调 | 写一个简单 HTML 调用自己的 API |
| 100-120min | 🎤 展示 | 演示 + 自由发挥 |

## 🧠 知识点

### 1. Flask 起步
```python
from flask import Flask, jsonify

app = Flask(__name__)

@app.route('/')
def hello():
    return "Hello World!"

@app.route('/api/quote')
def get_quote():
    return jsonify({
        "quote": "不积跬步，无以至千里",
        "author": "荀子"
    })

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)
```

### 2. 接收参数
```python
@app.route('/api/quote')
def get_quote():
    topic = request.args.get('topic', '人生')  # GET 参数
    # ... 根据 topic 返回不同的金句
```

### 3. 启动命令
```bash
pip install flask flask-cors
python app.py
# 浏览器打开 http://localhost:5000/api/quote
```

## 🚀 学生可以做

- [ ] 加更多金句（至少 10 句）
- [ ] 用 `?topic=xxx` 参数筛选金句
- [ ] 加一个新接口 `/api/random` 返回随机金句
- [ ] 修改端口号

## ✅ 这节课结束时的成果

自己的后端跑起来了，浏览器访问能看到 JSON 数据，前端能调用它。
