使用 Python 构建一个简单的 REST API

使用 Python 构建一个简单的 REST API

简介

本文档将引导您使用 Python 和 Flask 框架构建一个简单的 REST API。我们将创建一个 API,用于管理一个虚拟的书籍数据库。

准备工作

  • Python 环境: 确保您的系统上安装了 Python 3.x。
  • Flask 框架: 使用 pip 安装 Flask:
pip install Flask

项目结构

project/
├── app.py
└── data/
    └── books.json

1. 创建应用程序文件 (app.py)

from flask import Flask, jsonify, request

app = Flask(__name__)

# 加载书籍数据
def load_books():
    with open("data/books.json", "r") as f:
        return json.load(f)

# 初始化书籍数据
books = load_books()

# 获取所有书籍
@app.route("/books", methods=["GET"])
def get_books():
    return jsonify(books)

# 获取特定书籍
@app.route("/books/<int:book_id>", methods=["GET"])
def get_book(book_id):
    for book in books:
        if book["id"] == book_id:
            return jsonify(book)
    return jsonify({"error": "Book not found"}), 404

# 创建新书籍
@app.route("/books", methods=["POST"])
def create_book():
    new_book = request.get_json()
    books.append(new_book)
    return jsonify({"message": "Book created successfully"}), 201

# 更新书籍
@app.route("/books/<int:book_id>", methods=["PUT"])
def update_book(book_id):
    for i, book in enumerate(books):
        if book["id"] == book_id:
            books[i] = request.get_json()
            return jsonify({"message": "Book updated successfully"}), 200
    return jsonify({"error": "Book not found"}), 404

# 删除书籍
@app.route("/books/<int:book_id>", methods=["DELETE"])
def delete_book(book_id):
    for i, book in enumerate(books):
        if book["id"] == book_id:
            del books[i]
            return jsonify({"message": "Book deleted successfully"}), 204
    return jsonify({"error": "Book not found"}), 404

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

2. 创建书籍数据文件 (data/books.json)

[
  {
    "id": 1,
    "title": "The Hitchhiker's Guide to the Galaxy",
    "author": "Douglas Adams",
    "genre": "Science Fiction"
  },
  {
    "id": 2,
    "title": "1984",
    "author": "George Orwell",
    "genre": "Dystopian"
  }
]

运行 API

在终端中运行以下命令:

python app.py

现在,您的 API 应该在 http://127.0.0.1:5000/ 上运行。

测试 API

您可以使用工具如 Postman 或 curl 来测试 API 端点。

例如,使用 curl 获取所有书籍:

curl http://127.0.0.1:5000/books

总结

本文档演示了如何使用 Python 和 Flask 构建一个简单的 REST API。您可以根据需要扩展此 API,添加更多端点和功能。

posted @   nisan  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
无觅相关文章插件,快速提升流量
点击右上角即可分享
微信分享提示