我正在寻找一种将Node变量直接输出到google chrome浏览器控制台的方法。与console.log()
在客户端工作的方式相同。像this for php这样的东西。这将大大加快发展。
答案 0 :(得分:21)
注意:
由于旧的答案(2014年9月编写)引用了node-inspector
的旧版本,我的说明在2017年不再相关。此外,文档已经变得更好了,所以我更新了我的原始答案:< / p>
您需要
node-inspector 。 它打开了一个Chrome实例及其用于调试的开发工具。
它也很容易使用:
1。安装
$ npm install -g node-inspector
2。开始
$ node-debug app.js
答案 1 :(得分:5)
您可能想尝试NodeMonkey - https://github.com/jwarkentin/node-monkey
答案 2 :(得分:3)
我见过的最接近的是Node JS console object debug inspector
有关使用情况和潜在问题,请参阅此帖子:http://thomashunter.name/blog/nodejs-console-object-debug-inspector/
答案 3 :(得分:2)
对于通过ssh-shell (putty)在linux上使用 nodejs的用户:
linux-ssh-shell上的nodejs问题是,你没有连接浏览器。 我尝试了所有这些解决方案,但没有让它发挥作用。
所以我用firebase(https://firebase.google.com)制定了一个解决方案,因为我的项目使用了firebase。 如果你熟悉firebase,那么这是一个很好的方法。如果没有,firebase值得与nodejs结合使用 - 而且它是免费的!
在服务器端脚本(从节点启动)中使用自己的函数log():
// server-side:
// using new firebase v3 !
var fbRootRef = firebase.database();
var fbConsoleRef = fbRootRef.ref("/console");
var log = function(args) {
fbConsoleRef.set({'obj': args});
}
// inside your server-code:
log({'key':'value'});
在客户端,您可以在此控制台对象上创建firebase-reference:
// client side:
fbRootRef.child('/console').on('value', function(d) {
var v = d.val();
console.log(v);
});
现在,使用log()函数在服务器端登录的所有内容都会实时传输到firebase-database,并从那里触发客户端控制台引用并登录到浏览器控制台。
如果有人需要帮助,我会更详细地解释一下,可以用类型(console./log/warn/info)给这个日志记录提供更多扩展版本,用title-info分组(即服务器说:(filename +线)。
为项目设置firebase最多30分钟,在30分钟内插入控制台功能。我认为值得花时间!
答案 4 :(得分:1)
我知道这是一个古老的问题,但它位于我的Google搜索之上,因此也许有人会觉得我的答案有用。
因此您可以使用node --inspect-brk index.js
现在,您所需要做的基本上就是在Chrome地址栏中输入chrome://inspect
,然后单击Open dedicated DevTools for Node
在现已连接到Node的DevTools中,您将拥有习惯于使用的所有Chrome DevTools功能:
完成断点调试,逐步执行黑匣子
已编译代码的源映射
LiveEdit:带有V8的JavaScript热插拔评估
具有ES6功能/对象支持和自定义对象格式的控制台评估
带有Flamechart的JavaScript分析器采样
堆快照检查,堆分配时间表,分配概要分析
用于本机承诺的异步堆栈
希望有帮助。
答案 5 :(得分:0)
这是我在如何在VSC和Chrome浏览器上调试代码的酷视频 安德鲁米德
答案 6 :(得分:0)
您可以使用bonsole,这是一种在浏览器中记录内容的简单方法。即使在Linux中,您也可以转到LAN的IP进行检查。
答案 7 :(得分:0)
依赖最少的最简单方法是使用 WebSocket 连接将消息发送到浏览器。您可以在 Internet 上找到的任何 WebSocket 示例都足以完成此操作。其他一切都需要大量集成到主机系统中,如果您想在远程服务器上实际运行它,则它们将无法工作。您也可以通过这种方式直接从浏览器控制台向服务器发送命令。
链接:
https://www.npmjs.com/package/websocket
https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_client_applications