Fastapi教程一:起步

in fastapi with 1 comment

一、介绍:
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。

关键特性:

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

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

更少 bug:减少约 40% 的人为(开发者)导致错误。*
智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
简单:设计的易于使用和学习,阅读文档的时间更短。
简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
健壮:生产可用级别的代码。还有自动生成的交互式文档。
标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。

二、依赖
-Python 3.6 及更高版本
-Starlette 负责 web 部分。【备注:django rest framework的作者encode】
-Pydantic 负责数据部分。

三、简单的示例

pip install fastapi
pip install uvicorn   #encode大佬的作品


main.py:

from typing import Optional
from fastapi import FastAPI

app = FastAPI()


@app.get("/")
def read_root():
    return {"Hello": "World"}


@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
    return {"item_id": item_id, "q": q}

命令行中执行。uvicorn main:app --reload

四、点评:

fastapi 的编码风格跟flask类似,但是他支持异步视图,效率非常的高,后续我们会通过一个项目来讲解fastapi更多的用法。

Comments are closed.