如何在 WebStorm 中进行调试?"/>
Azure Functions:如何在 WebStorm 中进行调试?
azure-functions-cli 提供了一种启动调试的方法,但这些说明似乎是特定于 Visual Studio 的。
我尝试通过在 WebStorm 中设置运行配置以将 JavaScript 文件指向:
使用与无服务器类似的技巧\node_modules\azure-functions-cli\lib\main.js
然后传递应用程序参数:
run myFunctionName --debug
使用Azure的工具成功运行函数,但是WebStorm都尝试设置调试端口;当 Azure 窗口打开时,它会设置自己的调试端口。
来自网络风暴:
C:\Program Files (x86)\JetBrains\WebStorm 2016.2.3\bin\runnerw.exe" "C:\Program Files\nodejs\node.exe" --debug-brk=60168 --expose_debug_as=v8debug C:\Users\username\AppData\Roaming\npm\node_modules\azure-functions-cli\lib\main.js run myfunction --debug
Debugger listening on [::]:60168
System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException:
同样,Azure-cli 说它打开了一个调试端口,但它们不匹配。
因此,调用函数时设置的断点将被忽略(尽管它确实成功运行)。
有人知道如何正确配置它以便能够使用 WebStorm 进行调试吗?
回答如下:Azure-Functions-CLI 更名为 azure-functions-core-tools。如果您仍然有 Azure-Functions-CLI,请参阅本文末尾的旧回复。
如果您正在运行新的 azure-functions-core-tools ,它们似乎破坏了运行远程调试器的能力:-(。
我打开了以下问题,如果他们告诉我,我会更新: https://github/Azure/azure-functions-core-tools/issues/378
幸运的是,新的 azure-functions-core 工具 Beta 版并没有所有这些 C# 疯狂,阻止它在其他操作系统上运行并需要远程调试器。要安装该版本,您可以使用:
npm i -g azure-functions-core-tools@core
安装该版本后,您可以使用良好的标准 Node 运行时启动程序。
- 在 WebStorm 中,从 Run -> Edit Configurations 创建一个新的“Node.JS”。
- 给调试一些类型的名称。
- 将 JavaScript 文件设置为: ~\AppData\Roaming 下午 ode_modules zure-functions-core-tools\lib\main.js
注意:以上假设您在具有全局标志的 Windows 计算机上安装了 Azure Functions。
- 将应用程序参数设置为:start --debug VSCODE
- 编辑文件“.vscode\launch.json”并将node的调试端口更改为9229。
在 WebStorm 中选择运行-> 调试:“What_You_Named_the_Remote_Profile”
添加一些断点。
导航到您的 API 端点并查看断点是否有效。
注意:默认情况下,函数将位于 http://localhost:7071/api/functionName
---------------- 已编辑但为后代保留 --------------
好吧,看起来你不能用本地调试来做到这一点,但可以用 WebStorm 中的“远程调试”。
- 在 WebStorm 中,从运行 -> 编辑配置创建一个新的“Node.JS 远程调试”。
- 给调试一些类型的名称。
- 在上面写着“启动前:外部工具”的地方点击 + 号,然后选择“运行外部工具”。
- 再次点击 + 号并像屏幕截图一样填写它(假设您全局安装了 Azure Function CLI)。
注意:以上截图已根据最新版本的Azure Functions CLI/.早期版本要求您声明应用程序名称,并且不需要 --debug 进行调试。因此,如果您没有更新到最新版本的 Azure Functions CLI(现在称为 Azure-Functions-Core-Tools),您可能需要在“参数”字段中“运行 MyApp”。
在 WebStorm 中选择运行-> 调试:“What_You_Named_the_Remote_Profile”
添加一些断点。
导航到您的 API 端点并查看断点是否有效。
注意:默认情况下,函数将位于 http://localhost:7071/api/functionName
更多推荐
Azure Functions:如何在 WebStorm 中进行调试?
发布评论