RESTful API 已经成为现代 Web 应用程序开发中的不可或缺部分,通过 RESTful API 服务,客户端可以请求和接收服务器端的资源和数据。本文将介绍如何使用 FastAPI 和 MongoDB 搭建 RESTful API 服务,其中 FastAPI 是一个高性能的 Python Web 框架,MongoDB 是一种文档型数据库。
服务目录结构
首先,我们需要建立我们的服务目录结构,我们可以使用下面的命令行来创建并进入我们的服务目录:
----- --------------------------- -- -- ---------------------------
然后,我们需要使用下面的命令行来创建我们的 Python 虚拟环境:
------- -- ---- ---
接着,我们激活虚拟环境并安装必要的依赖:
------ ---------------- --- ------- ------- ----------------- -------
最后,我们可以使用下面的命令行来创建我们的服务目录结构:
----- ------- --------- ----------
目录结构如下:
--------------------------- --- --- --- ------- --- --------- --- ----------
数据库连接
接下来,我们需要连接到 MongoDB 数据库。我们可以在 main.py
中编写以下代码:
---- ------- ------ ------- ---- ------------------- ------ ------------------ --- - --------- ------ - ----------------------------------------------- -- - ----------------------------------
MongoDB 连接字符串中的 fastapi_mongodb_restful_api
是我们的数据库名称,我们需要将其替换为实际的数据库名称。现在,我们已经与 MongoDB 数据库建立了连接,接下来,我们可以编写我们的模型以及路由器。
模型
我们需要创建一个模型类,用于定义 MongoDB 数据库中的集合。我们可以在 models.py
文件中编写以下代码:
---- -------- ------ ---------- ----- ----- ---------------- --- --- - ------------------ ------ --- ------------ ---
上述代码中,我们使用了 Pydantic 来编写我们的模型类,Pydantic 是一个用于数据验证和序列化的高性能 Python 库。我们定义了一个名为 Task 的类,并指定其包含的属性。在 MongoDB 数据库中,我们需要使用 "_id" 作为任务 ID。
路由器
现在,我们需要创建我们的路由器。路由器类中定义的每个路由处理程序都将负责处理客户端请求。 我们可以在 routers.py
文件中编写以下代码:
---- ------- ------ ---------- ----- -------- ------------- ---- ---------------- ------ ---------------- ---- ------ ------ ---- ---- -------- ------ -- ------ - -------------------------- ----------------- ----- --- ----------------- ------ --------- - ----------- ------ - ----- ------------------------------ ---------------- - ----------------------- ------ --------- ---------------- ----- --- ------------- ----- - ----- ------------------------------------ ------ ----- ------------------------- ----- --- ------------------ ----- ---- - ----- ------------------------- --------- -- ---- -- ----- ----- ------------------------------ ------------ --- ------- ------ ---- ------------------------- ----- --- -------------------- ---- ----- ------ --------- - ----------- -------------------- ----- ------ - ----- ---------------------------- --------- ---------- -- --------------------- -- -- ----- ------------------------------ ------------ --- ------- ------ --------- ---------------------------- ----- --- -------------------- ----- ------ - ----- --------------------------- --------- -- -------------------- -- -- ----- ------------------------------ ------------ --- ------- ------ ------ --------
上述代码中,我们使用了 FastAPI 来编写我们的路由器类。我们将所有路由器的路径添加到/tasks
前缀中。create_task
方法将向 MongoDB 数据库中的 tasks 集合创建新任务。read_tasks
方法将返回 tasks 集合中的所有任务。read_task
方法将返回指定 ID 的任务。 update_task
方法将更新指定 ID 的任务。delete_task
方法将删除指定 ID 的任务。
运行
现在,我们已经定义了模型和路由器,接下来,我们需要启动我们的应用程序。我们可以使用以下命令行来运行我们的应用程序:
------- -------- --------
这将启动我们的应用程序并监听端口为 8000。
测试
最后,我们需要测试我们的 RESTful API 服务。我们可以使用 Postman 或 Curl 来测试我们的服务。
-- ----- ---- -- ---- - --------------------------- - -- -------------- ----------------- - -- -- -------- ----- --- -------------- ----- - ------------ -- -- ------ ---- --------------------------- -- ------ ---- ------------------------------------- -- ------ ---- -- --- - ------------------------------------- - -- -- -------- ----- --- -------------- ----- - ------------ -- -- ------ ---- -- ------ - -------------------------------------
结论
通过本文,我们已经学习了如何使用 FastAPI 和 MongoDB 搭建 RESTful API 服务。我们学习了如何定义模型和路由器,并实现了创建,读取,更新和删除操作。相信此时你已经有了更深入的关于 RESTful API 的理解,也学习了如何使用 Python 和 MongoDB 开发 Web 应用程序服务。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/66efabaf6fbf9601973070ba