FastAPI 中的 HTTP 方法

作者 : 慕源网 本文共1305个字,预计阅读时间需要4分钟 发布时间: 2022-03-27 共381人阅读

介绍

在之前的 FastAPI入门 FastAPI文章中,我们了解了 FastAPI 是什么,FastAPI 在使用 FastAPI 开发 API 时带来了哪些优势,并且还开发了一个简单的 REST API,带有 GET 端点,本文将展示 PUT 和 POST 操作和还描述了使用 Pydantic 进行对象建模。让我们探索一下。

强烈推荐

海量程序代码,编程资源,无论你是小白还是大神研究借鉴别人优秀的源码产品学习成熟的专业技术强势助力帮你提高技巧与技能。在此处获取,给你一个全面升级的机会。只有你更值钱,才能更赚钱

如果你是初级程序员可以研究别人的代码提高技术,如果你喜欢搞网盟或者外包,可以让你快速建站,还等什么赶快关注吧,我们会持续输出相关资源

海量源码程序,学习别人的产品设计思维与技术实践

POST

我们将从创建一个什么都不做的简单 POST 操作开始,它返回一个空响应,这样做与在 GET 中非常相似

@app.post('/employees')
def createEmployee():
return {}

FastAPI 中的 HTTP 方法

 

从客户端到 API 的数据作为 Request Body 发送,在 FastAPI 中用于声明 Request Body 应该使用 Pydantic 模型。Pydantic 模块具有 BaseModel 类,所有模型都是使用 BaseModel 类简单创建的。

from pydantic import BaseModel
class Employee(BaseModel):
id: int
name: str
dept: str

就是这样,我们的 Employee 模型已经准备好,还有更多内容,我们将在以后的文章中介绍。让我们修改端点

@app.post('/employees')
def createEmployee(employee: Employee):
return employee

在 createEmployee 方法中,我们传递 Employee Request Body 并返回它,让我们检查一下文档。

FastAPI 中的 HTTP 方法

在执行端点时

FastAPI 中的 HTTP 方法

进一步修改代码,让我们在 Employee List 中添加 Employee 对象。

@app.post('/employees')
def createEmployee(employee: Employee):
id = employee.id
employee_details[id] = employee
return employee_details[id]

让我们搜索最近创建的 id 为 5 的员工,GET 端点在前面的文章中有所介绍。

FastAPI 中的 HTTP 方法

PUT

让我们使用 PUT 操作更新员工的部门,实现很简单

@app.put('/employees/{empId}')
def updateEmployee(empId:int, employee:Employee):
employee_details[empId] = employee
return employee_details[empId]

FastAPI 中的 HTTP 方法

通过 id 5 获取 Employee 以验证 PUT 是否成功。

FastAPI 中的 HTTP 方法

结论

在本文中,我们已经介绍了 PUT/POST 和 Pydantic Base Models,我们慢慢地到达了那里。在接下来的文章中,将详细介绍 Pydantic,并且还将探索类以获得更好的文档。


慕源网 » FastAPI 中的 HTTP 方法

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录