fastapi简单笔记
fastapi简介
一种基于python的后端网络框架
各种参数
路径参数
当我们使用路径参数时一般要导入Path
1 | from fastapi import Path |
用法则是
1 |
|
如上,对参数进行限制
查询参数
当声明的参数不是路径参数时,路径操作函数会将其自动定义为查询参数
当我们使用路径参数时一般要导入Query,和路径参数相同,用法和路径参数相同
请求体参数
作用:创建、更新资源
在http协议中,一个完整的请求由三部分组成:
请求行:包含方法、URL、协议版本
请求头:元数据信息
请求体:实际要发送的数据内容
1 | from pydantic import BaseModel |
外部函数进行类型注解:Field,Field用法和Path和Query一样
1 | from pydantic import Field |
响应类型
默认情况下,fastapi会自动将路径操作函数返回的python对象转为json格式,并包装为jsonResponse返回
相应类型设置方式,装饰器中指定响应类,场景:固定返回类型(HTML、纯文本)
返回响应对象,场景:文件下载、图片、流式响应
响应html格式
设置相应类为htmlResponse,当前接口返回HTML内容
1 | from fastapi.responses import HTMLResponse |
响应文件格式
FileResponse高效返回文件内容(图片,视频,MP3等)
1 | from fastapi.responses import FileResponse |
自定义响应数据格式
response_model 是路径操作装饰器的关键参数,通过一个pydantic模型严格定义和约束api端点的输出格式
1 | from pydantic import BaseModel |
异常处理
客户端引发的错误,使用fastapi.HTTPException来中断正常的处理流程,并返回标准错误响应
1 | from fastapi import HTTPException |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 ようこそ、わが楽園へ!!
