You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Functions Python能否将路由指定为空字符串?

在API中设置默认路径的问题解答

核心结论

直接通过@app.route()的参数设置默认根路径(不修改function.json或全局基础路由)无法实现,原因源于Azure Functions Python编程模型的路由机制:

具体技术原因

  • Azure Functions Python模型里,@app.route()装饰器的路由参数是相对于函数基础路由的路径,基础路由的默认值由function.json的route字段或函数文件名决定,装饰器参数无法直接覆盖基础路由为根路径。
  • 你尝试的@app.route(route="/")写法,实际生成的路径是/<基础路由>/(比如函数文件是main.py,就会变成/main/),而非根路径/——因为装饰器的路由参数是追加在基础路由之后,而非替换基础路由。
  • 若不修改function.json,基础路由默认绑定函数文件名,所有通过装饰器设置的路由都会带上这个前缀,无法脱离。

替代方案(非纯装饰器方式)

如果坚持不想修改function.json,可以通过修改函数文件名实现:将函数文件命名为__init__.py,此时基础路由会变为空字符串,再使用@app.route(route="/")就能得到根路径/。但这本质是通过文件名间接改变了基础路由,并非完全依赖装饰器参数实现。

内容的提问来源于stack exchange,提问作者danilo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 03:32:33