赞
踩
本文主要介绍一下FastAPI是什么,多数内容摘自官网:https://fastapi.tiangolo.com/zh/
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。
关键特性:
交互式 API 文档以及具探索性 web 界面。因为该框架是基于 OpenAPI,所以有很多可选项,FastAPI 默认自带两个交互式 API 文档。
任何类型都有合理的默认值,任何和地方都有可选配置。所有的参数被微调,来满足你的需求,定义成你需要的 API。
但是默认情况下,一切都能**“顺利工作”**。
dict
).list
) 定义成员类型。str
) 字段, 定义最小或最大长度。int
, float
) 有最大值和最小值, 等等。所有的校验都由完善且强大的 Pydantic 处理。
集成了安全性和身份认证。杜绝数据库或者数据模型的渗透风险。
OpenAPI 中定义的安全模式,包括:
加上来自 Starlette(包括 session cookie)的所有安全特性。
所有的这些都是可复用的工具和组件,可以轻松与你的系统,数据仓库,关系型以及 NoSQL 数据库等等集成。
FastAPI 有一个使用非常简单,但是非常强大的依赖注入系统。
或者说,导入并使用你需要的代码,而不需要它们。
任何集成都被设计得被易于使用(用依赖关系),你可以用和路径操作相同的结构和语法,在两行代码中为你的应用创建一个“插件”。
FastAPI 和 Starlette 完全兼容(并基于)。所以,你有的其他的 Starlette 代码也能正常工作。FastAPI
实际上是 Starlette
的一个子类。所以,如果你已经知道或者使用 Starlette,大部分的功能会以相同的方式工作。
通过 FastAPI 你可以获得所有 Starlette 的特性 ( FastAPI 就像加强版的 Starlette ):
FastAPI 和 Pydantic 完全兼容(并基于)。所以,你有的其他的 Pydantic 代码也能正常工作。
兼容包括基于 Pydantic 的外部库, 例如用与数据库的 ORMs, ODMs。
这也意味着在很多情况下,你可以将从请求中获得的相同对象直接传到数据库,因为所有的验证都是自动的。
反之亦然,在很多情况下,你也可以将从数据库中获取的对象直接传到客户端。
通过 FastAPI 你可以获得所有 Pydantic (FastAPI 基于 Pydantic 做了所有的数据处理):
typing
的 List
和 Dict
等等。最重要就是python香啊,用python能做很多数据处理,然后python的web框架也很多,但是像FastAPI这样灵活简洁的还是极少的。
学完就可以写很多接口了,主要就是写一些API。
网站开发还得是java…
感谢阅读
原文链接:https://blog.jiumoz.com/archives/fastapi-cong-ru-men-dao-shi-zhan-0-chu-shi-fastapi
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。