我的情况有点不同。我正在测试一个API服务器和一个客户端(为该API服务器)。以下是适用于我的解决方案。
API服务器的package.json文件:
"scripts": {
"start": "DEBUG=users:* PORT=3333 SEQUELIZE_CONNECT=models/sequelize-sqlite.yaml node user-server",
"debug": "DEBUG=users:* PORT=3333 SEQUELIZE_CONNECT=models/sequelize-sqlite.yaml node --inspect-brk user-server"
},
launch.json (API服务器的文件)
"configurations": [
{
"type": "node",
"request": "attach",
"name": "Attach to Remote",
"address": "localhost",
"port": 9229,
"localRoot": "${workspaceFolder}",
"remoteRoot": "${workspaceFolder}",
"skipFiles": [
"<node_internals>/**"
]
},
完成以上步骤后,我会执行以下操作:
- 运行npm run debug
- 您应该立即看到类似于以下内容 - Debugger listening on ws://127.0.0.1:9229/8df6503b-00e9-43da-ac53-c54a013ba53f
- 在调试菜单中选择“Attach to Remote”(或者您给多个调试配置命名的其他名称),然后点击Run。
- 如果成功,您将立即看到类似于以下内容 - Debugger attached
这将运行API服务器,并启动调试器进行调试。
最后,为了真正测试API客户端,我会像这样运行API客户端文件。 注意 - 所有文件都在根目录中。如果您的文件分布在其他位置,则必须相应地修改localRoot和remoteRoot。
PORT=3333 node users-add-testthisman1.js
这里需要注意我的客户端配置。
var client = restify.createJsonClient({
url: 'http://localhost:'+process.env.PORT,
version: '*'
});
如果您的配置不同,那么您的命令行将有不同的参数。
"restart": true, "timeout": 1000
- Dicren