我是使用visual studio代码并尝试调试节点应用程序的新手。我已经生成了launch.json文件,如下所示:
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceRoot}/server/app.js"
}
]
这是我正在尝试调试的方法,它位于testController.js中:
exports.index = function(req, res) {
res.send('NOT IMPLEMENTED: Site Home Page');
};
我还添加了这个控制器来路由并添加了表达app的路由如下:
test.js
const express = require('express');
const router = express.Router();
var test_controller = require('../controllers/testController');
router.get('/',test_controller.index);
module.exports = router;
和app.js:
var index = require('./routes/test');
//Add routes middlewares
app.use('/',index);
我已经将断点添加到exports.index
。当我点击调试按钮它直接遇到断点时的问题但是当我从Postman调用相同的路径来测试api时,它永远不会到达断点。任何建议。
答案 0 :(得分:0)
您在方法定义上设置的断点将在启动时在服务器启动期间点击,其中在方法行中添加的断点将在调用方法时命中。
在您的情况下,您将断点添加到exports.index = function(req, res) {
而不是res.send('NOT IMPLEMENTED: Site Home Page')
;。当你点击调试按钮时它的命中和调用相同的方法,内部线路没有击中。确保在要检查的行中添加了断点。