将开发代理与 Visual Studio Code 调试配置配合使用

概览
目标: 在 VS Code 中进行调试时自动启动开发代理
时间: 10 分钟
插件: 各种
先决条件:设置开发代理、VS Code、开发代理工具包扩展

从扩展市场安装 开发代理工具包 。 该扩展为 Dev Proxy 提供任务和监视程序。

将开发代理添加到您的调试配置中

startstop 任务添加到项目的 tasks.json 文件中。

Tip

使用 devproxy-task-startdevproxy-task-stop 代码片段快速将 Dev Proxy 任务添加到你的 tasks.json 文件中。

文件: .vscode/tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "devproxy-start",
            "type": "devproxy",
            "command": "start",
            "isBackground": true,
            "problemMatcher": "$devproxy-watch",
        },
        {
            "label": "devproxy-stop",
            "type": "devproxy",
            "command": "stop"
        }
    ]
}

使用你在 preLaunchTask 文件中定义的任务标签配置 postDebugTasktasks.json 属性。 开发代理在应用程序运行之前启动,调试完成后停止。 以下示例演示如何将 launch.json 文件配置为使用开发代理和 Node.js 应用程序启动调试会话。

文件: .vscode/launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "skipFiles": [
                "<node_internals>/**"
            ],
            "program": "${workspaceFolder}/index.mjs",
            "preLaunchTask": "devproxy-start",
            "postDebugTask": "devproxy-stop",
            "env": {
                "NODE_ENV": "development",
                "http_proxy": "http://127.0.0.1:8000",
                "https_proxy": "http://127.0.0.1:8000"
            }
        }
    ]
}

将选项传递给 Dev Proxy

通过在args文件中的start任务的tasks.json属性中添加选项,可以将选项传递给开发代理。 例如,若要在录制模式下启动开发代理,请传递参数 --record:

文件: .vscode/tasks.json(具有参数的任务)

{
    "label": "devproxy-start",
    "type": "devproxy",
    "command": "start",
    "args": [
        "--record"
    ],
    "isBackground": true,
    "problemMatcher": "$devproxy-watch"
}

另请参阅