VSCode中的Python Azure函数(HTTPTrigger)上的调试未正确启动Func Host Start

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VSCode中的Python Azure函数(HTTPTrigger)上的调试未正确启动Func Host Start相关的知识,希望对你有一定的参考价值。

问题:enter image description here

所有依赖项如Python 3.6,windows环境变量都已设置,必要的requirements.txt手动安装在我的.env(我的虚拟环境)中,安装了API客户端,

错误:我得到的是h以下

我的launch.json看起来像这样,不知道如何解决这个问题 - 我怀疑vscode配置是个问题

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Attach to Python Functions",
      "type": "python",
      "request": "attach",
      "port": 9091,
      "host": "localhost",
      "preLaunchTask": "runFunctionsHost"
    }
  ]
}

任何方向或帮助表示赞赏。

答案

更新

自Azure Functions扩展v0.14.0以来,它已得到修复。

从调试配置中删除了特定于终端的分隔符


原始答案

点击settings.json目录下的.vscode,然后点击USER SETTINGS

检查设置"terminal.integrated.shell.windows",其值应为powershell.exe。调试任务根据操作系统使用不同的命令,Windows的命令仅适用于PowerShell。

另一答案

您可以使用.vscode/tasks.jsonbash文件更新为这样的内容

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "runFunctionsHost",
      "type": "shell",
      "osx": {
        "command": ". ${config:azureFunctions.pythonVenv}inactivate && func extensions install && pip install -r requirements.txt && func host start"
      },
      "windows": {
        "command": ". ${config:azureFunctions.pythonVenv}/Scripts/activate ; func extensions install ; pip install -r requirements.txt ; func host start"
      },
      "linux": {
        "command": ". ${config:azureFunctions.pythonVenv}inactivate && func extensions install && pip install -r requirements.txt && func host start"
      },
      "isBackground": true,
      "options": {
        "env": {
          "languageWorkers__python__arguments": "-m ptvsd --host 127.0.0.1 --port 9091"
        }
      },
      "problemMatcher": "$func-watch"
    },
    {
      "label": "funcPack",
      "type": "shell",
      "osx": {
        "command": ". ${config:azureFunctions.pythonVenv}inactivate && func pack"
      },
      "windows": {
        "command": ". ${config:azureFunctions.pythonVenv}/Scripts/activate ; func pack"
      },
      "linux": {
        "command": ". ${config:azureFunctions.pythonVenv}inactivate && func pack"
      },
      "isBackground": true
    }
  ]
}

注意windows命令的更改

另一答案

为了方便将来遇到此问题的人,请在编辑task.json时使用下面的屏幕截图,如@ PramodValavala-MSFT所述

enter image description here task.json的截图

以上是关于VSCode中的Python Azure函数(HTTPTrigger)上的调试未正确启动Func Host Start的主要内容,如果未能解决你的问题,请参考以下文章

将连接字符串设置为Azure函数中的应用设置/环境变量

我如何使用VSCode中的azure应用程序服务发布配置文件部署应用程序?

使用 Python 脚本的 ADF 管道中的 Azure 函数

高级计划中的 Python Azure 函数:函数的发布/部署失败……

在用 python 编写的天蓝色函数应用程序中使用 librosa

Azure 中的 Python Web Scraper