FastAPI教程-middleware中间件与Depends依赖区别

区别

特性 中间件 middleware Depends依赖项
执行时机 所有请求,路由之前 路由级别,可以给部分接口生效
作用域 全局http请求,包含404等未匹配路由 只匹配成功的路由接口
操作 修改request、response、header,计时、跨域 获取参数、校验,给接口注入变量
异常处理 可以捕获全局异常 只能捕获当前接口链路异常
适用场景 全局横切:日志、耗时、跨域、统一响应头 接口鉴权、参数解析、业务校验

选择参考

  • 鉴权优先用Depends
  • 全局统一日志、耗时统计、响应头处理,优先中间件。

原文出处:/show_1GW3s7H6kTJy.html