安下载(俺下载):打造放心的绿色安全下载站! 安下载首页|软件分类|最近更新

所在位置: 首页  >  电脑软件  >  编程开发  >  编程工具 > FastAPI(高性能Web框架) v0.63.0 官方版
FastAPI(高性能Web框架)

FastAPI(高性能Web框架)

 v0.63.0 官方版
  • 软件大小:5.45 MB
  • 更新日期:2021-01-08 17:29
  • 软件语言:英文
  • 软件类别:编程工具
  • 软件授权:免费版
  • 软件官网:
  • 适用平台:WinXP, Win7, Win8, Win10, WinAll
  • 软件厂商:

6
软件评分

本地下载文件大小:5.45 MB

软件介绍 人气软件 下载地址

为您推荐: 编程开发

  FastAPI是一款开发框架,可以帮助用户在电脑上设计新的网站,设计新的web程序,软件提供独立的TechEmpower基准测试方案,该方案在Uvicorn下运行的FastAPI应用程序是可用的最快的Python框架之一,仅在Starlette和Uvicorn本身,基准和速度¶当您检查基准测试时,通常会看到几种不同类型的工具被视为等效工具,具体来说,是将Uvicorn,Starlette和FastAPI进行比较,该工具解决的问题越简单它将获得更好的性能,而且大多数基准测试并未测试该工具提供的其他功能,软件提供额外的数据类型、Cookie参数、标头参数、反应模型、额外型号、响应状态码、表格数据等内容编辑,如果你需要这款软件就下载吧!

FastAPI(高性能Web框架)

软件功能

  可与 NodeJS 和 Go 比肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。

  高效编码:提高功能开发速度约 200% 至 300%。*

  更少 bug:减少约 40% 的人为(开发者)导致错误。*

  智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。

  设计的易于使用和学习,阅读文档的时间更短。

  使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。

  生产可用级别的代码。还有自动生成的交互式文档。

  标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。

软件特色

  FastAPI功能

  FastAPI为您提供以下内容:

  基于开放标准

  用于API创建的OpenAPI,包括路径 操作,参数,主体请求,安全性等的声明。

  具有JSON模式的自动数据模型文档(因为OpenAPI本身基于JSON模式)。

  经过仔细研究,围绕这些标准进行设计。而不是顶部的事后思考层。

  这也允许使用多种语言的自动客户端代码生成。

  自动文档

  交互式API文档和Exploration Web用户界面。由于该框架基于OpenAPI,因此有多个选项,默认情况下包含2个。

  Swagger UI,具有交互式探索功能,可直接从浏览器直接调用和测试您的API。

FastAPI(高性能Web框架)

  ReDoc的替代API文档。

FastAPI(高性能Web框架)
FastAPI(高性能Web框架)

  只是现代Python¶它们全部基于标准的Python 3.6类型声明(感谢Pydantic)。没有新的语法需要学习。只是标准的现代Python。

使用说明

  编辑器支持¶所有框架的设计都易于使用和直观,所有决定甚至在开始开发之前就已经在多个编辑器上进行了测试,以确保最佳的开发体验。

  在上一次Python开发人员调查中,很明显,最常用的功能是“ autocompletion”。

  整个FastAPI框架都可以满足这一要求。自动补全在任何地方都有效。

  您将很少需要回到文档。

  您的编辑器可以为您提供以下帮助:

  在Visual Studio Code中:

FastAPI(高性能Web框架)

  在PyCharm中:

FastAPI(高性能Web框架)

  您将获得以前甚至可能认为不可能完成的代码。例如,price来自请求的JSON主体内的键(可能是嵌套的)。

  无需再键入错误的键名,在文档之间来回回叫或上下滚动以查找是否最终使用username或user_name。

  短¶对于所有内容,它都有合理的默认值,并且在所有位置都具有可选配置。可以对所有参数进行微调,以执行所需的操作并定义所需的API。

  但是默认情况下,所有这些“都可以正常工作”。

  验证方式¶验证大多数(或所有?)Python数据类型,包括:

  JSON对象(dict)。

  list定义项目类型的JSON数组()。

  字符串(str)字段,用于定义最小和最大长度。

  具有最小值和最大值的数字(int,float)等。

  验证更多奇异类型,例如:

  网址。

  电子邮件。

  UUID。

  ...和别的。

  所有验证均由完善且强大的Pydantic处理。

  安全与认证¶集成了安全性和身份验证。无需对数据库或数据模型进行任何妥协。

  OpenAPI中定义的所有安全方案,包括:

  HTTP基本。

  OAuth2(也带有JWT令牌)。查看有关使用JWT的OAuth2的教程。

  API密钥:

  标头。

  查询参数。

  Cookies等

  加上Starlette的所有安全功能(包括会话cookie)。

  所有这些都是可重用的工具和组件,易于与您的系统,数据存储,关系数据库和NoSQL数据库等集成。

  依赖注入¶FastAPI包括一个非常易于使用但功能强大的“依赖注入”系统。

  甚至依赖项也可以具有依赖项,从而创建依赖项的层次结构或“图”。

  全部由框架自动处理。

  所有依赖项都可能需要来自请求的数据,并增加了路径操作约束和自动文档。

  甚至对依赖项中定义的路径操作参数的自动验证。

  支持复杂的用户身份验证系统,数据库连接等

  无需与数据库,前端等妥协。但可以轻松地与所有数据库集成。

  无限的“插件”¶或者以其他方式,不需要它们,导入并使用所需的代码。

  任何集成的设计都非常易于使用(具有依赖项),因此您可以使用两行代码,使用与路径操作相同的结构和语法,为您的应用程序创建一个“插件” 。

  经过测试¶100%的测试覆盖率。

  100%类型注释的代码库。

  用于生产应用。

  Starlette功能¶FastAPI与Starlette完全兼容(并基于Starlette)。因此,您拥有的任何其他Starlette代码也将起作用。

  FastAPI实际上是的子类Starlette。因此,如果您已经了解或使用Starlette,则大多数功能将以相同的方式工作。

  使用FastAPI,您可以获得Starlette的所有功能(因为FastAPI只是类固醇上的Starlette):

  令人印象深刻的性能。它是可用的最快的Python框架之一,可与NodeJS和Go媲美。

  WebSocket支持。

  GraphQL支持。

  处理中的后台任务。

  启动和关闭事件。

  测试基于的客户端requests。

  CORS,GZip,静态文件,流式响应。

  会话和Cookie支持。

  100%的测试覆盖率。

  100%类型注释的代码库。

  金字塔特征¶FastAPI与Pydantic完全兼容(并基于Pydantic)。因此,您拥有的任何其他Pydantic代码也将起作用。

  包括也基于Pydantic的外部库,例如用于数据库的ORM,ODM。

  这也意味着在许多情况下,您可以将从请求中获得的同一对象直接传递给数据库,因为所有内容都将自动进行验证。

  反之亦然,在许多情况下,您只需将从数据库中获得的对象直接传递给客户端即可。

  使用FastAPI,您可以获得Pydantic的所有功能(因为FastAPI基于Pydantic进行所有数据处理):

  没脑子:

  无需学习新的架构定义微语言。

  如果您知道Python类型,就会知道如何使用Pydantic。

  与您的IDE / linter / brain一起很好地玩:

  因为pydantic数据结构只是您定义的类的实例;自动完成,整理,mypy和您的直觉都应与验证的数据一起正常工作。

  快速:

  在基准测试中, Pydantic比所有其他经过测试的库都快。

  验证复杂的结构:

  分层Pydantic车型使用,Python中typing的List和Dict,等等。

  验证器使复杂的数据模式可以清晰,轻松地定义,检查并记录为JSON模式。

  您可以具有深度嵌套的JSON对象,并使它们全部经过验证和注释。

  可扩展:

  Pydantic允许定义自定义数据类型,或者您可以使用由验证器装饰器装饰的模型上的方法扩展验证。

  100%的测试覆盖率。

  Python类型简介¶Python支持可选的“类型提示”。

  这些“类型提示”是允许声明变量类型的特殊语法。

  通过声明变量的类型,编辑器和工具可以为您提供更好的支持。

  这只是有关Python类型提示的快速教程/复习。它仅涵盖了将它们与FastAPI一起使用所需的最低要求...实际上很少。

  FastAPI都是基于这些类型提示的,它们具有许多优点和好处。

  但是,即使您从未使用过FastAPI,您也可以从中学习到一些好处。

  注意

  如果您是Python专家,并且已经了解有关类型提示的所有知识,请跳到下一章。

  动机¶让我们从一个简单的例子开始:

FastAPI(高性能Web框架)

  调用该程序输出:

  John Doe

  该函数执行以下操作:

  取first_name和last_name。

  将每个字母的首字母转换为大写title()。

  将它们在中间连接一个空格。

FastAPI(高性能Web框架)

  编辑它¶这是一个非常简单的程序。

  但是现在想象一下,您是从头开始编写它的。

  在某个时候,您已经开始定义函数,已经准备好参数...

  但是然后您必须调用“将第一个字母转换为大写字母的方法”。

  是upper吗 是uppercase吗 first_uppercase?capitalize?

  然后,您尝试与老程序员的朋友,编辑器自动完成。

  您键入函数的第一个参数first_name,然后键入点(.),然后单击Ctrl+Space以触发完成。

  但是,可悲的是,您没有得到任何有用的信息:

FastAPI(高性能Web框架)

  添加类型¶让我们从以前的版本中修改一行。

  我们将从以下位置更改此片段(函数的参数):

  first_name, last_name

  至:

  first_name: str, last_name: str

  而已。

  这些是“类型提示”:

FastAPI(高性能Web框架)

  这是另一回事。

  我们使用的是冒号(:),而不是等于(=)。

  添加类型提示通常不会改变没有它们会发生的事情。

  但是现在,假设您再次处于创建该函数的中间,但是带有类型提示。

  同时,您尝试使用触发自动完成,Ctrl+Space您会看到:

FastAPI(高性能Web框架)

  这样,您可以滚动查看选项,直到找到“响起铃声”的选项:

FastAPI(高性能Web框架)

  更多动力¶检查此功能,它已经具有类型提示:

FastAPI(高性能Web框架)

  因为编辑器知道变量的类型,所以您不仅获得完成,还获得错误检查:

FastAPI(高性能Web框架)

  现在您知道必须修复它,并使用以下命令将其转换age为字符串str(age):

FastAPI(高性能Web框架)

人气软件