背景:有时候由于我们本地的没有足够多的数据,所以需要在远程服务器的测试环境进行调试。
我们可以用VSCode进行调试远程服务器上的Nodejs 服务
一、启动远程服务器上的Nodejs服务
node --inspect=你的服务器IP或域名:9229 bin/www
注意:这里的 9229是专门用来远程调试的接口,不是你项目监听的端口。
二、启动完成后的验证
1. 启动成功后,控制台会输出类似于:
2. 浏览器中输入:http://你服务器的IP或域名:9229/json/version
会显示如:
如果出现无响应,可以将你刚才输入的IP 换成 0.0.0.0
三、修改VSCode配置文件
修改launch.json
文件,添加:
{
"version": "0.2.0",
"configurations": [
// 这个是 本地调试用的
{
"type": "node",
"request": "launch", // 这个是本地调试的标识
"name": "启动程序",
"program": "${workspaceRoot}/bin/www",
"cwd": "${workspaceRoot}"
},
// 这个是远程调试用的
{
"type": "node",
"request": "attach", // 这个是远程调试的标识
"name": "调试服务器的dev",
"address": "你远程服务器的IP或域名,不要加端口",
"port": 9229, // 这个就是第一步中启动时用到的端口号
// 下面两个 是将远程服务器的代码映射到本地
"localRoot": "${workspaceFolder}", // 你本地的代码位置,这个是VSCode默认生成的
"remoteRoot": "/var/www/github/dev/my-nodejs-demo", // 这个是你远程服务器上的代码根目录
"protocol": "inspector"
}
]
}
四、开始调试
此时调用服务器上的接口,并在合适位置断点,就可以开始远程调试了