如何从FastAPI应用中获取已挂载的子应用列表?
FastAPI 获取挂载的子应用实例
FastAPI没有提供名为app.subapps()的方法,但你可以通过主应用实例的mounted_apps属性来获取所有已挂载的子应用实例。
具体用法示例:
假设你已经完成子应用挂载:
from fastapi import FastAPI main_app = FastAPI() sub_app1 = FastAPI() sub_app2 = FastAPI() # 挂载子应用到主应用 main_app.mount("/sub1", sub_app1) main_app.mount("/sub2", sub_app2)
要获取所有挂载的子应用,直接访问main_app.mounted_apps即可,它返回一个列表,每个元素是包含挂载信息和子应用实例的对象:
for mount_item in main_app.mounted_apps: print(f"挂载路径: {mount_item.path}") print(f"子应用实例: {mount_item.app}")
每个mount_item对象包含核心属性:
path: 子应用的挂载路径(字符串类型)app: 对应的子应用实例(如FastAPI对象)name: 挂载的标识名称(可选,默认使用子应用的title)
内容的提问来源于stack exchange,提问作者Jamie J
相关产品推荐
相关产品推荐

