环境:
远程系统 : deepIn 15.11
本地系统:windows 7
nodejs : 12.13.0
1.程序部署
将nodejs程序同时放到远程系统和本地系统
$ tree . ├── index.js └── node_modules └── express
// index.js 'use strict'; const http = require('http'); const express = require('express')(); // express const serverPort = 9090; ex("/test", function (req, res) { con("0_" + req.url); res.send('test'); }) // express ex("/*", function (req, res) { con("0_" + req.url); res.send('*'); }) // Start the server (express).listen(serverPort, function () { // express con('Your server is listening on port %d (http://localhost:%d)', serverPort, serverPort); });
2.开启远程调试
在deepIn中输入
$ cd /home/dev/Desktop/nodeExpress $ node --inspect=0.0.0.0:9229 index.js Debugger listening on w For help, see: Your server is listening on port 9090 (http://localhost:9090)
3.本地vscode配置远程调试
**vscode中打开文件夹本地部署代码的目录nodeExpress**
需要配置远程ip、端口号、本地代码目录、远程代码目录
{
"version": "0.2.0",
"configurations": [
{ "type": "node", "request": "attach", "name": "Attach to Remote", "address": "192.168.129.164",//TCP/IP address of process to be debugged "port": 9229, "localRoot": "${workspaceFolder}", "remoteRoot": "/home/dev/Desktop/nodeExpress",//Absolute path to the remote directory containing the program "skipFiles": [ "<node_internals>/**" ] } ] }
4.在本地代码中打断点调试
本地代码需要和远程代码保持一致,不然可能出现断点不生效的问题
5.结果
vscode远程调试nodejs