рендерера (через defaultSession) через локальную прокси-сервис внутри приложения.
Цель — использовать одну точку выхода трафика из приложения, чтобы можно было модифицировать его или добавить промежуточную прокси (upstream proxy). То есть, трафик сначала проходит через мою прокси, где его можно либо изменить, либо пропустить без изменений, а затем он отправляется дальше или на следующую прокси.
Этот подход работает отлично с решениями, которые генерируют полноценные сертификаты и осуществляют настоящий MITM (Man-in-the-Middle) с использованием CA-сертификата. В Electron я обычно добавляю обработчик ошибки сертификата, который либо игнорирует ее, либо выполняет валидацию, сопоставляя сертификат прокси с тем, который указан в запросе.
Однако этот метод кажется чересчур громоздким и избыточным. Есть ли более простой способ перехвата трафика до его шифрования? Используя ограниченные возможности API webRequest в Electron (документация), через этот API можно только отменить запрос, сделать редирект или модифицировать заголовки. Этого явно недостаточно для моей задачи.
Обсуждают сегодня