将控制台JS命令发送到Electron应用程序



我希望自动化现有的Electron应用程序。它提供了对开发人员工具的访问,所以我可以将 Javascript 代码粘贴到控制台中,但必须有一种方法可以远程执行此操作,最好是使用 Node 或从终端?

我已经看到了运行Chrome的此选项:--远程调试端口= 9222 ...这暗示了一个解决方案,但我似乎无法靠近。

如果您使用--remote-debugging-port=9222启动Electron应用程序,那么您将通过Chrome DevTools协议启用远程调试。您可以将 Chrome 开发者工具实例用作客户端,也可以使用以下客户端之一:https://github.com/ChromeDevTools/awesome-chrome-devtools#chrome-devtools-protocol

可调试的 Chrome 实例将在localhost:9222上运行。这意味着只要您尝试从同一台机器进行调试,就可以了。但是,如果要从远程计算机进行调试,则需要一些额外的设置。

在源计算机上设置 SSH 隧道:

ssh -L 0.0.0.0:9223:localhost:9222 localhost -N

这将接受9223端口上的传入流量,并将其路由到 Chrome 远程调试。

然后在客户端计算机上使用地址:source-machine-ip:9223访问远程调试。

注意:如果没有额外的SSH设置,这可能不适用于Windows,因为SSH未与Windows预先打包。

最新更新