在常规作用域中设置代理的扩展可以通过以下方式解除该设置:

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' 是在扩展仍保留控制权的前提下表达该选择。解除控制与选择直连模式是两种不同的用户操作,所以要把界面上的关闭或恢复操作接到预期的那一种上。

相关文章