使用VSCode调试器时未执行Node.js回调

时间:2016-10-14 21:11:46

标签: javascript node.js debugging visual-studio-code

我的VSCode Node.js调试器存在问题。

我有以下代码(下载图像并计算其哈希值):

var request = require('request');
var crypto = require('crypto');

request({ uri : 'http://static.wixstatic.com/media/28f6fa_1519eb247c97446098566248a9f86441.jpg', 
    encoding: null, 
    timeout: 10000 
    }, function (err, res, body) {
    if (err) {
        return res.status(500).send(err);
    }
    if (res.statusCode !== 200) {
        return res.status(500).send(buildResponse(500, "Image download returned status code " + res.statusCode));
    }
    console.log(crypto.createHmac('sha256', body).digest('hex'));
});

如果我运行node test.js,它会完美地打印文件的哈希值。 如果我使用VSCode调试模式运行它,它不会。

如果我在第4行(request({...)设置了一个断点,则调试器会遇到断点。 如果我在第8行(if (err) { ...)设置了一个断点,则调试器不会达到断点。

我做错了什么还是这个错误?

$ node -v
v4.6.0

VSCode版本:1.6.1恢复构建

1 个答案:

答案 0 :(得分:1)

只需使用node-inspector,它就是调试后端代码的更好方法

这里是链接,并有完整的指南,以启动

https://www.npmjs.com/package/node-inspector

顺便说一下,你想使用node-debug

调试一些特定的文件
  

node-debug my_file_to_debug.js

我希望它可以帮到你。