Прокси-расширения Chrome: сброс переопределения и прямой режим
Очистите ту же область настроек расширения Chrome, которая была задана, и различайте освобождение этого переопределения и принудительное прямое подключение.
Расширение, задавшее прокси в обычной области, может освободить эту настройку так:
chrome.proxy.settings.clear({ scope: 'regular' }, () => {
if (chrome.runtime.lastError) {
console.error(chrome.runtime.lastError.message);
return;
}
chrome.proxy.settings.get({ incognito: false }, details => {
console.log(details.value, details.levelOfControl);
});
});
Выполните это в разрешённом фоновом контексте расширения. Если переопределение было задано в области инкогнито, очистите ту же область; очистка обычной не удаляет отдельное переопределение инкогнито.
clear освобождает настройку расширения. После этого Chrome может использовать другую применимую конфигурацию, включая системные настройки, параметры командной строки, другое расширение или политику. Поэтому системный прокси может оставаться действующим после успешного clear.
Для расширения, явная функция которого — прямой режим, установка mode: 'direct' выражает этот выбор, пока расширение сохраняет контроль. Освобождение контроля и выбор прямого режима — разные действия пользователя, поэтому свяжите действие выключения или восстановления в интерфейсе с нужным.