首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何才能从V8应用程序中与基于函数的Node.js调试app对话?

如何才能从V8应用程序中与基于函数的Node.js调试app对话?
EN

Stack Overflow用户
提问于 2014-03-14 09:59:56
回答 1查看 683关注 0票数 1

我有一个相当特殊的调试问题,因为我的Node应用程序本身就是一个Node调试器(应用程序的一个部分将提供一个调试接口来调试另一个部分)。

我熟悉V8调试协议,记录在:

https://code.google.com/p/v8/wiki/DebuggerProtocol

以及使用它的多种工具(包括Node中的内部调试器、节点检查器和许多其他工具)。如果我必须通过网络连接来访问API,正如所有现有工具所做的那样,我可以这样做,但我不希望有几个原因。我已经进入-proc,希望避免在所有情况下打开调试端口和网络开销(这是我的生产环境的一部分),并且我希望从调试API中获得Javascript对象,而不是通过JSON化的版本,您可以通过JSON API(它缺乏一些保真度)。

V8调试器文档说:“这有两个API :基于函数的API使用JavaScript对象,基于消息的API使用基于JSON的协议,基于函数的API可以由进程内调试器代理使用,而基于消息的API也可以用于进程外。”

使用JavaScript对象的基于函数的API听起来正是我所需要的,但是我在V8文档中看不到关于这个API或如何使用它的其他任何东西。我也无法看到如何从V8访问这个API (或一般的Node.js )。那么,这有可能吗?如果有,怎么可能?

EN

回答 1

Stack Overflow用户

发布于 2014-03-14 10:44:20

从来没有失败过。一整天都在研究。寄给他。10分钟后找到答案。

使用以下参数启动Node.js:--expose-debug-as=v8debug

这并不令人意外地将V8调试状态公开为您可以引用的模块:

代码语言:javascript
复制
var debug = v8debug.Debug;
var scripts = debug.scripts();

仍在整理JS入口点的堆积,以及它们如何与已发布的API保持一致,但我认为我的主要问题或多或少已经解决了。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22401679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档