Jus*_*tin 2 javascript websocket node.js socket.io
我正在使用Eclipse的Google Chrome Developer Tools插件来调试我的Node.js服务器.此服务器使用Socket.io作为我的Web客户端和服务器之间的websocket连接.当我在服务器中设置断点并开始逐步执行代码时,问题就来了.客户很快决定服务器不再存在,因为不再有心跳或任何通信,因此它会断开连接.同时,当我逐步执行时,我的代码尝试使用套接字执行某些操作,然后它因为套接字现已关闭而死亡.尝试像这样调试有点棘手.
所以问题是,如何使用开放的websocket连接调试这样的服务器而不关闭连接?我不知道有一个很好的解决方案,但我想我会把它放在那里,看看是否有人有天才的想法.
经过更多的研究后,我发现了几个看起来很有希望的项目,即"node-inspector"和"node-codein".但是,node-inspector不能使用最新版本的节点,而node-codein有很多错误.此外,两者都没有真正维护,它们都只适用于Chrome.所以,我编写了自己的解决方案,名为Node Monkey,它非常易于使用,适用于Firefox或Chrome.它只是捕获在Node应用程序中记录到控制台的内容,并将该输出重定向到浏览器控制台.您可以通过运行来安装它:
npm install node-monkey
Run Code Online (Sandbox Code Playgroud)
即使它听起来很讨厌和石头老化,但在这种情况下(实际调试客户端 - >服务器环境)我经常在服务器端使用标准输出,就像console.log()和console.debug.
如果您需要调试客户端脚本,你可以做一样的,如果你不想失去与服务器的连接.在你重新配置socket.IO的心跳超时从根本上更高的时候,我实际上看不到任何其他方法.
| 归档时间: |
|
| 查看次数: |
3609 次 |
| 最近记录: |