我希望能够逐步完成我的快速服务器逻辑,但我无法这样做。
我使用的是nodeJS版本v6.2
和babel-node版本v6.9
这是我想要介绍的一些代码:
app.get("/instagram", (req, res) => {
const instagramEndpoint = "https://api.instagram.com/v1/users/self/media/recent/?access_token=";
const limit = 16;
const user = "testuser";
const keys = require('./keys.json');
const accessToken = keys.instagram.accessToken;
console.log('HIT instagram API');
fetch(instagramEndpoint + accessToken[user])
.then(res => {
if (res.status !== 200) {
log.error('Instagram API status is not 2XX');
log.error('Status: ' + res.status);
return {};
}
console.log('request to instagram API successful');
debugger;
return res;
})
.catch(err => {
log.error('Instagram API error: ' + err);
return {};
});
});
这些是我尝试的命令及其输出:
$ babel-node --debug-brk --inspect server/server.js
$ babel-node --debug-brk server/server.js
这两个命令都在终端中有我这个:
$ babel-node --inspect --presets babel-preset-es2015 -- server/server.js
$ babel-node --debug --presets babel-preset-es2015 --inspect -- server/server.js --debug
$ babel-node --debug --presets babel-preset-es2015 --inspect -- server/server.js
这些命令给了我很多这个。 --debug
Debugger listening on port 5858
被添加到输出的顶部。我不确定我的代码是否已达到debugger
当我转到localhost:5858
时,浏览器中唯一的输出是
Type: connect
V8-Version: 5.0.71.47
Protocol-Version: 1
Embedding-Host: node v6.2.0
Content-Length: 0
我做错了什么?我无法单步执行express
服务器
答案 0 :(得分:1)
问题是你需要使用新的附加模式,因为在启动调试过程之前,代码将首先由babel-node转换。
node_modules/babel-cli/bin/babel-node.js --debug --presets es2015 -- <app_entry_point> --debug
命令运行后,您应该看到端口9229正在侦听
我正在撰写有关如何在VSCode中调试ES6的指南,您可以访问here了解更多详情