如何在WebStorm/PhpStorm中只调试socket.io连接而不调试Node.js站点?

如何在WebStorm/PhpStorm中只调试socket.io连接而不调试Node.js站点?,node.js,sockets,debugging,phpstorm,xdebug,Node.js,Sockets,Debugging,Phpstorm,Xdebug,我正在用PHP开发一个网站。在这个网站上,我正在创建聊天室。现在的问题是,我无法在WebStorm/PhpStorm中正确调试 这是我以前在cmd中使用的命令 node -r dotenv/config server.js 为了进行调试,我使用了console.log,它将在cmd中写入套接字服务器数据,并在浏览器控制台中写入客户端套接字数据 我想转到IDE调试。我使用PhpStorm,有时使用WebStorm。两者在JavaScript处理方面是相同的 这是我在PhpStorm中完成的配置:

我正在用PHP开发一个网站。在这个网站上,我正在创建聊天室。现在的问题是,我无法在WebStorm/PhpStorm中正确调试

这是我以前在cmd中使用的命令

node -r dotenv/config server.js
为了进行调试,我使用了
console.log
,它将在cmd中写入套接字服务器数据,并在浏览器控制台中写入客户端套接字数据

我想转到IDE调试。我使用PhpStorm,有时使用WebStorm。两者在JavaScript处理方面是相同的

这是我在PhpStorm中完成的配置:

问题是断点在server.js中的套接字接收器上不起作用

const express = require("express");
const app = express();
const serverConf = require("./serverConf");
const server = serverConf.createServer(app);
const io = require("socket.io").listen(server, {'pingTimeout': 5000, 'pingInterval': 1000});

serverConf.startServer(server);

io.on("connection", function (socket) {
    socket.on("admin_send_text", async function(response) {
        response.admin_id;
        console.log(response);
    });
});
断点位于response.admin\u id行上

因为我没有使用任何路由,所以无法调试套接字连接。只是转到下一行。就像没有断点一样

这是我在终端收到的一条信息

"C:\Program Files\nodejs\node.exe" -r dotenv/config C:\xampp\htdocs\gofashion\chat\server.js DEBUG=*
Debugger listening on ws://127.0.0.1:61037/1e06be2f-b94f-41c4-bbc8-a7437dcd2d4d
For help, see: https://nodejs.org/en/docs/inspector

如何在服务器上的套接字接收器上设置断点?

使用类似的设置对我有效-断点上的执行被暂停,我可以在调试器中看到收到的数据。顺便说一句,如果您将
DEBUG=socket.io*
添加到Node.js run configuration的环境变量部分,那么您可以从socket.io获得更多日志记录,但我不会暂停执行。它一直在继续。DEBUG=socket.io*不停止执行`DEBUG=socket.io*`不应该挂起它,它只是启用调试日志记录。不幸的是,除非您提供一个在Question中描述的配置中显示问题的项目,否则我几乎帮不上忙。断点将永远无法到达。你给听众打电话了吗?我缺少连接到express服务器的socket.io端点的代码片段。带有
[…]io.connect('ws://127.0.0.1:61037')的简单html;emit('admin_send_text',{admin_id:'123456'});[…]
应该足够了。如果需要的话,我会写一个更详细的答案。显然,我正在从客户端发送文本,它会到达服务器并继续执行我编写的操作,但问题是断点在这方面不起作用。i、 上面提到的示例“admin\u send\u text”在从客户端发出后被调用,但断点对其不起作用,而且在回调函数中也不起作用