Rexistra onStartup e onInstalled de forma sincronizada no nivel superior dun service worker Manifest V3 cando eses eventos deban aplicar o proxy seleccionado. Para unha extensión fixada a propósito nunha soa ruta:

function applyProxy() {
  chrome.proxy.settings.set({
    value: {
      mode: 'fixed_servers',
      rules: {
        singleProxy: {
          scheme: 'http',
          host: 'proxy.example',
          port: 8080,
        },
      },
    },
    scope: 'regular',
  }, () => {
    if (chrome.runtime.lastError) {
      console.error(chrome.runtime.lastError.message);
    }
  });
}

chrome.runtime.onStartup.addListener(applyProxy);
chrome.runtime.onInstalled.addListener(applyProxy);

O manifest debe declarar o permiso de proxy e nomear este worker en segundo plano. Para unha ruta pública permitida sen autenticación de proxy, substitúe o punto de conexión por un candidato da lista de proxies HTTP, mantendo o porto como enteiro.

onStartup é o inicio do perfil coa extensión instalada. onInstalled tamén abrangue as actualizacións, incluída a recarga dunha extensión sen empaquetar, que conta como actualización. O evento de creación de xanela describe cada xanela e pode dispararse repetidamente nunha mesma sesión.

Se a extensión garda perfís ou ten un interruptor de apagado, fai que o xestor cargue e aplique esa escolla en lugar de restablecer un valor predeterminado fixo en cada actualización. O rexistro de escoitas queda no nivel superior; o traballo asíncrono pode comezar cando Chrome chame o xestor.

Proba a instalación e o inicio do perfil por separado durante o desenvolvemento, comprobando o resultado da configuración en cada caso. Son dúas rutas de inicialización, non unha proba que se obteña abrindo outra xanela.

Artigos relacionados