美文网首页Python从测试到开发
FastAPI -- python 后端开发 01

FastAPI -- python 后端开发 01

作者: tevorwang | 来源:发表于2021-09-10 19:18 被阅读0次

    FastAPI 是啥

    logo-teal.png

    FastAPI framework, high performance, easy to learn, fast to code, ready for production

    FastAPI我们从上面官方的解释中可以看到几个关键字:高性能、易学、快速编码、生产可用。

    有多快?

    TechEmpower 提供了一个开源的 web 框架基准测试程序,我选取了常见的几个 python 框架,得到了以下结果。

    framework-benchmarks.png

    我们可以看出 FastAPI 不是最快的框架,但是可以甩开 Flask、django、tornado 一大截。性能比 FastAPI 的那些框架,一般都是一个功能比较单一的基础框架,缺少数据校验等等一系列的功能。

    点击这里查看原始 python 框架基准测试结果

    多简单

    安装

    pip install fastapi
    pip install uvicorn[standard] 
    # 如果你使用的是zsh, 请使用引号
    # pip install "uvicorn[standard]"
    

    准备代码

    创建一个main.py 文件,加入以下代码。

    from fastapi import FastAPI
    
    app = FastAPI()
    
    @app.get("/")
    def hello_world():
        return {"message": "hello world!"}
    
    

    运行一个demo 程序只需要5行代码,使用了装饰器简洁明了。

    运行

    vicorn main:app --reload
    
    INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
    INFO: Started reloader process [28720]
    INFO: Started server process [28722]
    INFO: Waiting for application startup.
    INFO: Application startup complete.
    

    打开http://127.0.0.1:8000,可以看到以下结果。

    fastapi-demo-helloworld.png

    API 文档

    FastAPI 是默认集成了Swagger的功能,打开 http://127.0.0.1:8000/docs,你可以看到swagger的文档了。 惊不惊喜,再也不用手动配置了,真香。

    fastapi-docs-demo.png

    redoc 格式文档

    打开链接 http://127.0.0.1:8000/redoc, 你可以看到下面 redoc 格式的文档了, 买一赠一,虽然不一定用到,顺便送的不是。

    fastapi-redoc-demo.png

    相关文章

      网友评论

        本文标题:FastAPI -- python 后端开发 01

        本文链接:https://www.haomeiwen.com/subject/srynwltx.html