小生活悠闲小镇物语内置菜单
244.88MB · 2025-12-03
当你能用 Python 写出清晰、规范、易用的 REST API 时,你做的项目就能被各类前端轻松调用,从而具备真正的“互联网应用能力”。
今天我们就聊聊 REST API 是什么、为什么重要、该怎么用 Python 实现,以及前后端之间是如何交互的。
REST 的全称是 Representational State Transfer,是一种轻量级、标准化的接口设计风格。
它不复杂,用一句话概括就是:
使用 URL 表示资源,用 HTTP 方法表达操作。
比如“文章”这个资源:
| 操作 | 方法 | 示例 URL |
|---|---|---|
| 获取文章列表 | GET | /api/articles/ |
| 创建一篇文章 | POST | /api/articles/ |
| 获取某篇文章详情 | GET | /api/articles/10/ |
| 更新文章 | PUT | /api/articles/10/ |
| 删除文章 | DELETE | /api/articles/10/ |
这就是 REST 最核心的思想: URL 表资源,方法表行为。
在前后端分离架构下:
两者通过 API 连接,像这样:
React / Vue / 小程序 / App → REST API → Python 后端
好处非常明确:
也就是说,只要你写好 API,应用就能随便接各种前端。
Python 有很多方式可以创建 REST API,最常用的有:
下面我们用 Flask 示范一个最简单的 REST API。
你先安装 Flask:
pip install flask
写一个基础接口:
from flask import Flask, jsonify, request
app = Flask(__name__)
articles = [
{"id": 1, "title": "Hello Python", "content": "Flask makes API easy"},
{"id": 2, "title": "REST 风格", "content": "让接口更标准更清晰"},
]
@app.get("/api/articles")
def get_articles():
return jsonify(articles)
@app.post("/api/articles")
def create_article():
data = request.json
data["id"] = len(articles) + 1
articles.append(data)
return jsonify({"message": "created", "article": data})
if __name__ == "__main__":
app.run()
运行:
python app.py
然后你就可以访问:
这就是最基础的 REST API。
现代前端一般使用 axios、fetch、uni.request、小程序 API 等方式 来调用后端接口。
以 JavaScript fetch 为例:
fetch("http://127.0.0.1:5000/api/articles")
.then(resp => resp.json())
.then(data => console.log(data));
返回值通常是 JSON:
[
{
"id": 1,
"title": "Hello Python",
"content": "Flask makes API easy"
},
{
"id": 2,
"title": "REST 风格",
"content": "让接口更标准更清晰"
}
]
你会发现,前端不需要知道任何数据库细节,只用关注数据本身即可。
一个优秀的 API 应该满足以下条件:
不要让前端猜字段。
示例:
尽量避免:
/getArticle
/addArticle
要这样:
/articles/
/articles/10
字段名称简洁统一。
如果你的项目较大,推荐使用:
特点:
一行代码就能生成 API:
from rest_framework.viewsets import ModelViewSet
特点:
示例语法简洁漂亮:
from fastapi import FastAPI
app = FastAPI()
@app.get("/items")
def read_items():
return {"msg": "hello"}
这一章我们搞清楚了:
当你能熟练写 REST API,你已经具备成为后端开发者的重要能力。 在实际项目中,它能帮你快速搭建服务端系统,让你的业务真正落地运行。