9 个 FastAPI 的必知资源

9 个 FastAPI 的必知资源

FastAPI 是 Python 开发人员最新、最流行的 API 框架之一。我们的工程师一次又一次需要将一个或多个第三方库与我们的 API 结合使用,以附加额外的功能和特性来丰富我们的项目。

在今天的这篇文章中,我想与您分享一些对于常规 FastAPI 从业者非常有用的资源。我已经在自己的项目中使用了其中的大部分,并且还包括我计划在不久的将来使用的一些。

那么让我们深入看看吧!

FastAPI-pagination

该库允许您从 API 路由发送简单的分页响应。这在main.py中的几行代码中使用非常方便,而不是自己编写整个分页逻辑。

在此处查看库: uriyyo-fastapi-pagination.netlify.app/

FastAPI-MVC

这是一个极其方便的 Python 开发人员生产力工具,可从单个 shell 命令开始制作高质量的 FastAPI 生产就绪 API。

您可以获得 MVC Python 项目的所有样板设置,并且可以利用该库中定义的生成器直接编写项目特定代码。

您开箱即用的东西包括:

  • Python Poetry 依赖管理
  • Makefile、GitHub 操作和 Docker 设置
  • 现成的 Sphinx 文档

以及更多。

在此处查看库: github.com/fastapi-mvc...

FastAPI-Mail

正如您可能已经从名称中猜到的,这是一个轻量级库,可帮助您轻松地从 FastAPI 项目发送邮件,并且内置对后台任务管理的支持。

您可以使用此库发送基于文本和文件的电子邮件,从而使您不必自己重新发明轮子来编写逻辑。

在此处查看该库:github.com/sabuhish/fa...

Tortoise-ORM

如果您像我一样非常习惯 Django 中的内置 ORM,并且在 FastAPI 中工作感到措手不及,那么在查看这个库后您不会失望的。

这是一个受 Django 启发的 ORM,可帮助您以 Django 式的方式使用您选择的关系数据库。

在此处查看该库:tortoise.github.io/#why-was-to...

FastAPI-Cache

构建生产级 API 需要许多额外的要求,例如工作缓存。该库允许您集成 Redis 和 memcache 等缓存,以非常方便地缓存 FastAPI 响应和函数结果。

此外,它甚至还支持 AWS Dynamo-DB 来存储缓存!

在此处查看该库: github.com/long2ice/fa...

FastAPI-Limiter

防止滥用生产 API 路由的最简单方法之一是通过速率限制过程。该库允许您通过简单的 Python 装饰器在 FastAPI 路由中轻松集成速率限制。

它还支持 Web 套接字,这是一项附加功能,它对通过套接字交换的数据进行速率限制。

在此处查看该库: github.com/long2ice/fa...

FastAPI-Admin

Django 的管理界面是最酷的开箱即用功能之一,但 FastAPI 中再次缺少该功能。正如您可能已经猜到的,这个库很好地满足了这一要求。

它使用 Bootstrap HTML 模板作为管理/仪表板 UI 来为 FastAPI 项目制作管理界面。

在此处查看库: github.com/fastapi-adm...

FastAPI Best Practises

任何生产就绪系统中的最佳实践都可能包括需要完成的大量检查。自己收集这些要求可能会很乏味,而且很可能会错过该过程中的一些关键步骤。

该存储库是一组全面的最佳实践的集合,您可以选择在 FastAPI 项目中使用它们。

在此处查看存储库:github.com/zhanymkanov...

具有消息队列和监控功能的 FastAPI

RabbitMQ 是最流行的消息代理之一,如果您想将其与 FastAPI 项目集成,那么这个样板 GitHub 存储库就是您的最佳选择。

它甚至包括一个方便的 Celery 设置,用于通过集成的 Redis 后端监控任务。相当惊人!

在此处查看该库: github.com/GregaVrbanc...

原文地址

9 FastAPI Resources You Need To Know

相关推荐
CodeCraft Studio39 分钟前
Excel处理控件Aspose.Cells教程:使用 Python 在 Excel 中创建甘特图
python·excel·项目管理·甘特图·aspose·aspose.cells
遥不可及~~斌40 分钟前
Spring Boot RESTful API 设计指南:查询接口规范与最佳实践
spring boot·后端·restful
SaleCoder2 小时前
用Python构建机器学习模型预测股票趋势:从数据到部署的实战指南
开发语言·python·机器学习·python股票预测·lstm股票模型·机器学习股票趋势
熟悉的新风景7 小时前
springboot项目或其他项目使用@Test测试项目接口配置-spring-boot-starter-test
java·spring boot·后端
技术猿188702783518 小时前
实现“micro 关键字搜索全覆盖商品”并通过 API 接口提供实时数据(一个方法)
开发语言·网络·python·深度学习·测试工具
烛阴8 小时前
为什么你的Python项目总是混乱?层级包构建全解析
前端·python
三金C_C8 小时前
asyncio 与 uvloop
python·异步·asyncio
放飞自我的Coder8 小时前
【colab 使用uv创建一个新的python版本运行】
开发语言·python·uv
晴空月明8 小时前
分布式系统高可用性设计 - 监控与日志系统
后端
songroom9 小时前
【转】Rust: PhantomData,#may_dangle和Drop Check 真真假假
开发语言·后端·rust