首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

fastapi:高性能api

FastAPI:异步框架中的“小钢炮”

fastapi在Python后端圈子越混越火,吸引了一大批开发者,它异步特性又特别强,还有自动生成API文档的功能,简直就是开发者的福音啊!

1.

搭建开发环境

要玩转fastapi,得先搞定开发环境。装它可简单了,一行命令就搞定:

pip install fastapi uvicorn

记得把uvicorn也装上,它是个 ASGI服务器 ,能让你的fastapi应用跑起来。

2.

写个Hello World

来看看最基础的代码:

from fastapi import FastAPI

app = FastAPI()

@app.get(“/”)

async def root():

return {“message”: “Hello World”}

温馨提示:async/await是异步编程的关键字,不过刚开始学习的话,可以先不加async,代码一样能跑起来~

保存代码,在终端里敲:

uvicorn main:app --reload

浏览器访问就能看到效果啦!

3.

玩转路径参数

API开发少不了要处理各种参数,fastapi处理起来贼方便:

@app.get(“/users/{user_id}”)

def get_user(user_id: int):

return {“user_id”: user_id}

看到没?直接在函数参数里指定类型,fastapi自动帮你做参数校验,传错类型直接报错,太贴心了!

4.

自动生成API文档

这个功能真是太赞了!启动服务后访问 /docs,漂亮的Swagger文档直接就出来了,不用写一行文档代码:

@app.post(“/items/”)

def create_item(name: str, price: float):

“”“

创建商品

”“”

return {“name”: name, “price”: price}

温馨提示:记得给函数写点注释,这些注释会直接显示在文档里,队友看了都说好!

5.

请求和响应模型

处理复杂的数据结构,用 Pydantic模型 准没错:

from pydantic import BaseModel

class Item(BaseModel):

name: str

price: float

is_offer: bool = None

@app.post(“/items/”)

def create_item(item: Item):

return item

fastapi自动帮你做数据校验,还能自动生成请求和响应的JSON Schema,不要太爽!

光靠这些基础功能就能撸出一个不错的API项目。要是再深入研究中间件、依赖注入、后台任务这些高级特性,那简直是如虎添翼!代码写得快,性能又高,用了都说好。

记住一点,写API项目,fastapi绝对是个靠谱的选择!

点点赞

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OhofSQ_YJa-5Bo-GDXRgKi_Q0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券