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

如何解决VSCode调试FastAPI Azure Function App的连接拒绝问题

解决FastAPI + Azure Functions调试器无法连接(ECONNREFUSED 127.0.0.1:9091)的问题

针对你遇到的调试器无法连接9091端口的问题,核心原因是Azure Functions Python Worker的调试模式未正确开启,或者端口配置不匹配。以下是具体的修复步骤:

1. 开启Python Worker调试模式并指定端口

修改tasks.json,添加调试相关的环境变量,确保函数主机启动时让Python Worker监听指定的调试端口:

{
  "version": "2.0.0",
  "tasks": [
    {
      "type": "func",
      "command": "host start",
      "problemMatcher": "$func-python-watch",
      "isBackground": true,
      "dependsOn": "pip install (functions)",
      "env": {
        "PYTHON_ENABLE_WORKER_DEBUGGING": "1",
        "PYTHON_WORKER_DEBUG_PORT": "9091"
      }
    }
  ]
}

2. 修正调试器附着配置

调整launch.json,明确指定连接主机,并开启输出重定向,确保调试器能正确识别Worker的调试端口:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Attach to Python Functions",
      "type": "python",
      "request": "attach",
      "port": 9091,
      "host": "127.0.0.1",
      "preLaunchTask": "func: host start",
      "redirectOutput": true,
      "justMyCode": false
    }
  ]
}

3. 确保Python环境一致性

你之前遇到的"无法找到Python"问题,大概率是Functions Core Tools使用的Python解释器和VSCode选中的不一致:

  • 在VSCode左下角确认选中的是你安装的Python 3.9.13环境
  • 打开终端运行where python(Windows),复制输出的Python路径,在VSCode的Python解释器选择中手动指定该路径
  • 运行func start前,先激活对应的Python虚拟环境(如果使用了虚拟环境)

4. 重新启动调试流程

  • 停止所有正在运行的函数主机进程
  • 点击VSCode的调试按钮启动"Attach to Python Functions"任务
  • 观察终端输出,若出现类似Waiting for debugger to attach on port 9091的日志,说明调试端口已正常监听,此时调试器会自动连接成功

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 17:23:34