🌐 Flask:轻量级 Web 框架
Flask 是 Python 中最流行的 Web 微框架之一。它灵活、简单,非常适合快速开发 Web 应用或 API 服务。
✅ Flask 解决了什么问题?
如果你要用 Python 构建网页或接口服务,你可能会自己写 socket、手动处理 HTTP 请求,非常复杂。
Flask 提供了:
- 👩💻 清晰的 Web 开发结构(路由 → 控制 → 模板)
- 🧱 丰富的扩展库(数据库、认证、表单验证)
- ⚙ 简洁的配置与部署方式
⚙ 安装 Flask
pip install flask
📝 创建第一个 Flask 应用
创建 app.py
文件:
从 flask 导入 Flask
应用 = Flask(**name**)
@应用.路由("/")
定义 首页():
返回 "你好,Flask!"
如果 **名** == "**主**":
应用.运行(调试=True)
🔄 路由与视图函数
@应用.路由("/hello")
定义 打招呼():
返回 "你好,世界"
@应用.路由("/用户/<名字>")
定义 用户(名字):
返回 f"你好,{名字}"
📥 获取请求参数
从 flask 导入 请求
@应用.路由("/搜索")
定义 搜索():
关键词 = 请求.参数.get("q")
返回 f"你搜索了:{关键词}"
📤 提交表单(POST 请求)
@应用.路由("/登录", 方法=["POST"])
定义 登录():
用户名 = 请求.表单["用户名"]
返回 f"欢 迎,{用户名}"
📄 使用模板渲染 HTML
目录结构如下:
myflask/
├── app.py
└── templates/
└── hello.html
hello.html
:
<!DOCTYPE html>
<html>
<body>
<h1>你好,{{ name }}!</h1>
</body>
</html>
视图函数:
从 flask 导入 渲染模板
@应用.路由("/问候/<名字>")
定义 问候(名字):
返回 渲染模板("hello.html", name=名字)
🧰 常用开发功能
✅ 重定向与跳转
从 flask 导入 重定向, url_for
@应用.路由("/跳转")
定义 跳转():
返回 重定向(url_for("首页"))
✅ 返回 JSON 响应
从 flask 导入 jsonify
@应用.路由("/数据")
定义 数据():
返回 jsonify(名字="张三", 年龄=18)
⚙ 配置调试模式
app.run(debug=True)
🔒 Flask 中的请求方法
方法 | 描述 |
---|---|
GET | 获取资源 |
POST | 提交数据 |
PUT | 更新资源 |
DELETE | 删除资源 |
PATCH | 局部更新 |
📦 更完整结构建议
适合中型项目的结构:
myflask/
├── app.py
├── config.py
├── templates/
├── static/
├── routes/
│ └── main.py
└── models/
🚀 部署推荐方式
开发时:
flask run
生产环境推荐:
- Gunicorn + Nginx
- Docker 化部署
- 使用 WSGI 服务如
uwsgi
、waitress