1.5.5 • Published 10 months ago

diat-custom-live-inspector v1.5.5

Weekly downloads
-
License
MIT
Repository
-
Last release
10 months ago

live-inspector

开启一个Node.js进程的inspect端口,并与其通信。

原理

SIGUSR1 + inspector protocol

限制

  • 因为SIGUSR1没法用在windows上,所以这个lib不支持windows。
  • 因为只能监听9229端口,所以如果9229端口已经被占用(比如被其他Node.js的inspect端口占用),则无法正确进行操作。
  • 如果进程已经开启了inspector端口并进行了一些操作,同时使用这个lib可能会产生未知后果。

使用

const { Communication } = require('diat-custom-live-inspector')

(async () => {
  const comm = new Communication({
    pid: PID
  })

  // 开始通信
  await comm.connect()

  // 执行一个表达式
  const ret = await comm.execCode('process.version')

  console.log(ret) // 输出: { result: { type: 'string', value: 'v10.16.0' } }

  // 关闭通信
  await comm.disconnect()
})();

API

TODO

事件

通过Communication.eventEvents实例,可以通过其监听到inspector协议中的事件。除了inspector协议的事件外,还包括Communication自定义的事件,有:

  • LiveInspector.close: ws关闭。参数表示关闭的原因,包含: code, reason
1.5.5

10 months ago

1.5.4

10 months ago

1.5.3

10 months ago