wordpress建站教程视频教程,百度推广登录首页,百度如何推广广告,软件开发专业排名今天看了点fastap#xff0c;简单记录下#xff0c;fastapi是一个python下的后端框架。 参考学习网站菜鸟教程
安装
pip install fastapi
pip install uvicorn[standard]安装好了以后就可以直接使用#xff0c;最主要的使用方式就是写接口嘛#xff0c;get简单记录下fastapi是一个python下的后端框架。 参考学习网站菜鸟教程
安装
pip install fastapi
pip install uvicorn[standard]安装好了以后就可以直接使用最主要的使用方式就是写接口嘛getpost接口记录两个例子
from fastapi import FastAPI#应用名字就是app
app FastAPI()#标记下面这个函数的访问路径就是ip/
app.get(/)
def read_root():return {Hello: World}一、无参get 注意我的以上代码放在我的main.py里面所以是main:app如果你放到其他文件里面要改main
uvicorn main:app --reload然后就成功
二、传参get
from typing import Union#Union代表q可以是str也可以什么都不传
app.get(/items/{item_id})
def read_item(item_id: int, q: Union[str, None] None):return {item_id: item_id, q: q}三、POST
from pydantic import BaseModelclass Item(BaseModel):name: strprice: floatis_offer: Union[bool, None] Noneapp.put(/items/{item_id})
def update_item(item_id: int, item: Item):return {item_name: item.name, item_id: item_id}然后在127.0.0.1:8000/docs接口文档下测试 四、其他 4.1 一般fastapi接口接收字典时使用的类要继承pydantic的BaseModel
4.2 使用Form可以检测是否符合标准,在定义model的时候使用
from pydantic import BaseModel, Field
class Item(BaseModel):name: str Field(..., titleItem Name, max_length100)description: str Field(None, titleItem Description, max_length255)price: float Field(..., titleItem Price, gt0)4.3 使用fastapi包下的HTTPException可以根据传入的数据返回状态码
from fastapi import HTTPException
app.get(/items/{item_id})
def read_item(item_id: int):if item_id 42:raise HTTPException(status_code404, detailItem not found)return {item_id: item_id}4.4 fastapi文件上传功能
from fastapi import FastAPI, File, UploadFile
app FastAPI()
# 路由操作函数
app.post(/files/)
async def create_file(file: UploadFile File(...)):return {filename: file.filename}