Python Flask 教程:从零构建 RESTful API 并实现 CRUD 操作

作者:API传播员 · 2025-09-16 · 阅读时间:4分钟

在本教程中,我们将详细介绍如何使用 RESTful API。通过本教程,您将掌握从零开始构建和部署功能齐全的 RESTful API 的基本步骤。


先决条件

在开始之前,请确保您的开发环境中已安装以下工具和依赖项:

  • Python 3.x
  • pip 包管理工具
  • Postman(用于测试 API)

步骤 1:设置 Flask 应用程序

首先,为项目创建一个新目录,并在其中初始化一个虚拟环境。执行以下命令:

$ mkdir flask-rest-api
$ cd flask-rest-api
$ python3 -m venv venv
$ source venv/bin/activate

接下来,安装 Flask 和 Flask-RESTful:

$ pip install Flask Flask-RESTful

步骤 2:创建 API

在项目目录中创建一个名为 app.py 的文件,并添加以下代码:

from flask import Flask
from flask_restful import Api, Resource

app = Flask(__name__)
api = Api(app)class HelloWorld(Resource):
    def get(self):
        return {"message": "Hello, World!"}api.add_resource(HelloWorld, "/")if __name__ == "__main__":
    app.run(debug=True)

上述代码创建了一个简单的 API,其中包含一个返回 JSON 格式消息 {"message": "Hello, World!"} 的端点。

启动 Flask 服务器:

$ python app.py

步骤 3:测试 API

使用 Postman 或其他 API 测试工具,向 http://localhost:5000/ 发送 GET 请求。您应该会收到以下 JSON 响应:

{
  "message": "Hello, World!"
}

步骤 4:扩展 API

接下来,我们将为 API 添加更多功能,创建一个简单的内存数据存储,并实现 CRUD(创建、读取、更新、删除)操作。

更新 app.py 文件,添加以下代码:

if name == "main":
app.run(debug=True)

app = Flask(__name__)
api = Api(app)

data_store = []

class DataResource(Resource):
def get(self, data_id):
for data in data_store:
if data["id"] == data_id:
return data
return {"error": "data not found"}, 404

def post(self, data_id):
data = request.get_json()
data["id"] = data_id
data_store.append(data)
return data, 201

def put(self, data_id):
for data in data_store:
if data["id"] == data_id:
data.update(request.get_json())
return data
return {"error": "data not found"}, 404

def delete(self, data_id):
global data_store
data_store = [data for data in data_store if data["id"] != data_id]
return {"result": "data deleted"}

api.add_resource(DataResource, "/data/")

if __name__ == "__main__":
app.run(debug=True)

测试 CRUD 操作

  1. 创建数据:向 http://localhost:5000/data/1 发送 POST 请求,带有以下 JSON 正文:

    {
      "name": "Sample Data",
      "value": 123
    }
  2. 读取数据:向 http://localhost:5000/data/1 发送 GET 请求。

  3. 更新数据:向 http://localhost:5000/data/1 发送 PUT 请求,带有更新后的 JSON 正文。

  4. 删除数据:向 http://localhost:5000/data/1 发送 DELETE 请求。


结论

通过本教程,您学习了如何使用 Python 和 Flask 创建一个简单的 RESTful API,并实现了基本的 CRUD 操作。这仅仅是一个开始,您可以进一步扩展 API,例如:

  • 连接到数据库以存储数据
  • 实现用户身份验证和授权
  • 添加更多复杂的业务逻辑

随着项目的复杂性增加,您可能需要更高效的开发支持。原文链接如下,供您参考:

原文链接: https://reintech.io/blog/how-to-create-a-restful-api-with-python