Отправка консольных команд 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.

Другие вопросы по тегам