跳到主要内容

🌐 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 服务如 uwsgiwaitress