gpt4 book ai didi

express - 使用Visual Studio Code调试ExpressJS服务器端代码

转载 作者:行者123 更新时间:2023-12-04 16:33:29 25 4
gpt4 key购买 nike

我使用了一个简单的CRUD应用程序

  • express :4.13.4
  • gulp:3.9.1
  • mongodb:v3.0.6
  • reactjs:15.0.2。
  • 节点:4.0.0

  • 对于服务器端代码,我听说可以通过 Visual Studio Code(v1.1.1。)进行调试。

    我从git bash通过 gulp serve启动应用程序。但是我不知所措,不知道如何开始调试!

    我的gulp任务的一小段。
    gulp.task('serve',['bundle','start-server'],function(){

    browserSync.init({
    proxy:'http://localhost:3000',
    port:9001
    });

    });

    当我们单击VS Code上的调试按钮以启动调试界面时,我们将看到一个launch.json,其中有两个配置选项。
    {
    "version": "0.2.0",
    "configurations": [
    {
    "name": "Launch",
    "type": "node",
    "request": "launch",
    "program": "${workspaceRoot}",
    "stopOnEntry": false,
    "args": [],
    "cwd": "${workspaceRoot}",
    "preLaunchTask": null,
    "runtimeExecutable": null,
    "runtimeArgs": [
    "--nolazy"
    ],
    "env": {
    "NODE_ENV": "development"
    },
    "externalConsole": false,
    "sourceMaps": false,
    "outDir": null
    },
    {
    "name": "Attach",
    "type": "node",
    "request": "attach",
    "port": 3000,
    "address": "localhost",
    "restart": false,
    "sourceMaps": false,
    "outDir": null,
    "localRoot": "${workspaceRoot}",
    "remoteRoot": null
    }
    ]

    }

    我猜这些是启动和附加配置。但是,我们实际上如何通过调试来大吃一惊。

    我已经看到人们通过将“program”键修改为 "program": "/usr/local/bin/grunt"来启动grunt进程。但是似乎我无法做到这一点

    即使当我通过git bash启动我的应用程序并尝试像 here一样“附加”调试器时,vs代码也只会显示一条错误消息,提示“已取消”!

    TLDR;
  • 当我们在VS代码中启动调试时,如何启动gulp(或)grunt(或)启动服务器?
  • 是否可以通过cmd或bash在外部启动应用程序,并且仍然能够使用调试器调试服务器端代码?如果是这样,需要对launch.json进行哪些更改?
  • 最佳答案

    好吧,后来有很多书签和链接我终于通过启动和附加成功调试了。

    通过启动配置进行调试:

          {
    "name": "Launch",
    "type": "node",
    "request": "launch",
    "program": "${workspaceRoot}/server.js",
    "stopOnEntry": true,
    "args": [],
    "cwd": "${workspaceRoot}",
    "preLaunchTask": null,
    "runtimeExecutable": null,
    "runtimeArgs": [
    "--nolazy"
    ],
    "env": {
    "NODE_ENV": "development"
    },
    "externalConsole": false,
    "sourceMaps": false,
    "outDir": null
    }

    在下拉菜单中选择启动选项的情况下,按VSC调试 View 上的绿色>按钮,您应该在VSC控制台中看到类似这样的内容。
    node --debug-brk=21735 --nolazy server.js

    并且调试器应在server.js文件的第一行暂停。
    用断点调试! :)

    通过附加配置进行调试:
           {
    "name": "Attach",
    "type": "node",
    "request": "attach",
    "port": 5858,
    "address": "localhost",
    "restart": false,
    "sourceMaps": false,
    "outDir": null,
    "localRoot": "${workspaceRoot}",
    "remoteRoot": null
    }

    从外部启动服务器
    $node --debug-brk server.js

    您的提示应在处暂停
    Debugger listening on port 5858

    按下VSC调试 View 上的绿色>按钮,并在下拉列表中选择附加选项,调试器应自动附加自身并在server.js的第一行暂停

    调试广告恶心

    关于express - 使用Visual Studio Code调试ExpressJS服务器端代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37321872/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com