随笔分类 - fastapi
fastapi
发表于 2024-02-28 17:17阅读次数:48评论次数:0
摘要:设置默认值 @app.get("/items/") async def read_items(q: Union[str, None] = Query(default=None, max_length=50)): # Query适用于查询参数中,设置默认值为None,并且规定最大长度为50 resul
阅读全文 »
发表于 2024-02-28 17:15阅读次数:21评论次数:0
摘要:单个查询字符串 @app.get('/index/{username}') def index(username: str, id: int): # id为查询字符串 ?id=5 return {"message": "success", "username": username, "id": id
阅读全文 »
发表于 2024-02-28 17:12阅读次数:44评论次数:0
摘要:路径参数额外校验Path from fastapi import Path app = FastAPI() @app.get('/items/{item_id}') async def read_items(item_id: str = Path(default=None, max_length=3
阅读全文 »
发表于 2024-02-28 16:55阅读次数:16评论次数:0
摘要:路径参数 # 单一参数 @app.get('/index/{id}') def index(id: int): return {"message": "success", "data": id} # 多参数 @app.get('/index/{username}/{id}') def index(u
阅读全文 »
发表于 2024-02-28 16:54阅读次数:399评论次数:0
摘要:mount应用挂载 1.创建主app应用对象实例,注册所属的路由信息 from fastapi import FastAPI from fastapi.response import JSONResponse app = FastAPI(title='主应用', description='主应用描述
阅读全文 »
发表于 2024-02-28 16:52阅读次数:190评论次数:0
摘要:APIRouter实例的路由注册 API端点路由注册大致分为3种: 1.基于app实例对象提供的装饰器或函数进行注册 2.基于FastAPI提供的APIRouter类的实例对象提供的装饰器或函数进行注册 3.通过直接实例化APIRoute对象且添加的方式进行注册 路由注册方式 基于APIRouter
阅读全文 »
发表于 2024-02-28 16:51阅读次数:113评论次数:0
摘要:APIRouter和 APIRoute的区别 # APIRouter 主要是定义路由组,可以理解为一个路由组的根路由,类似于flask的蓝图 # APIRoute 表示具体路由节点对象
阅读全文 »
发表于 2024-02-28 16:49阅读次数:406评论次数:0
摘要:APIRouter参数介绍 class APIRouter(routing.Router): def __init__( self, *, prefix: str = "", # 表示当前路由分组的url前缀 tags: Optional[List[Union[str, Enum]]] = None
阅读全文 »
发表于 2024-02-28 16:48阅读次数:293评论次数:0
摘要:一个路由配置多个http请求方法 app = FastAPI(routes=None) # 方式一:app.api_route() @app.api_route(path='/index', methods=['GET','POST']) async def index(): return {'ms
阅读全文 »
发表于 2024-02-28 16:46阅读次数:52评论次数:0
摘要:节点元数据参数说明 # 拿app.get()方法的参数来说明,其他的差不多类似 def get( self, path: str, *, response_model: Optional[Type[Any]] = None, status_code: Optional[int] = None, ta
阅读全文 »
发表于 2024-02-28 16:44阅读次数:107评论次数:0
摘要:全局routes参数的使用 from fastapi import FastAPI, Request from fastapi.response import JSONResponse from fastapi.routing import APIRoute async def fastapi_in
阅读全文 »
发表于 2024-02-28 16:43阅读次数:216评论次数:0
摘要:如何关闭交互式文档 from fastapi import FastAPI app = FastAPI( docs_url=None, redoc_url=None, openapi_url=None, )
阅读全文 »
发表于 2024-02-28 16:41阅读次数:331评论次数:0
摘要:开启调试模式 from fastapi import FastAPI from fastapi.responses import PlainTextResponse app = FastAPI(debug=True) # 生产环境关闭 @app.get('/') def index(): 1988/
阅读全文 »
发表于 2024-02-28 16:40阅读次数:267评论次数:0
摘要:FastAPI类参数说明 def __init__( self, *, debug: bool = False, # 是否启动调试模式 routes: Optional[List[BaseRoute]] = None, #自定义路由列表 title: str = "FastAPI", # api文档
阅读全文 »
发表于 2024-02-28 16:39阅读次数:220评论次数:0
摘要:安装 pip3 install fastapi pip3 install uvicorn[standard] # 是一个ASGI异步服务器网关接口服务器框架 pip3 install python-multipart #处理表单参数的 # 完整安装 pip install fastapi[all]
阅读全文 »
发表于 2024-02-26 22:03阅读次数:2462评论次数:0
摘要:HTTPException介绍 HTTPException是FastAPI中用于处理HTTP错误的异常类。当你在处理请求时遇到异常情况,可以抛出HTTPException, FastAPI将自动使用合适的HTTP状态码和响应体返回给客户端。以下是一些详细的说明: HTTPException是一个派生
阅读全文 »
发表于 2024-02-25 02:19阅读次数:911评论次数:1
摘要:版本 python3.11版本,aioredis 2.0.1版本,redis 7.x版本 redis.conf配置文件 daemonize yes bind 0.0.0.0 port 6379 protected-mode no 代码 from fastapi import FastAPI impo
阅读全文 »