Отправка консольных команд JS в приложение Electron
Я ищу, чтобы автоматизировать существующее приложение Electron. Он предоставляет доступ к инструментам разработчика, поэтому я могу просто вставить код Javascript в консоль, но должен быть способ сделать это удаленно, в идеале с помощью Node или из терминала?
Я видел эту опцию для запуска Chrome: --remote-debugging-port=9222 ... которая намекает на решение, но я не могу приблизиться.
1 ответ
Если вы запустите свое приложение Electron с --remote-debugging-port=9222
тогда вы включите удаленную отладку по протоколу Chrome DevTools. Вы можете использовать экземпляр инструментов разработчика Chrome в качестве клиента или использовать один из клиентов здесь: https://github.com/ChromeDevTools/awesome-chrome-devtools
Отладочный экземпляр Chrome будет работать на localhost:9222
, Это означает, что пока вы пытаетесь отлаживать с той же машины, у вас все в порядке. Однако, если вы хотите выполнить отладку с удаленной машины, вам понадобится дополнительная настройка.
Настройте SSH-туннель на исходном компьютере:
ssh -L 0.0.0.0:9223:localhost:9222 localhost -N
Это будет принимать входящий трафик на 9223
порт и направьте его в Chrome для удаленной отладки.
Затем на вашем клиентском компьютере используйте адрес: source-machine-ip:9223
для доступа к удаленной отладке.
Примечание. Это может не работать в Windows без дополнительной настройки SSH, поскольку SSH предварительно не упакован с Windows.