Registra onStartup i onInstalled de manera sincrònica al nivell superior d'un service worker Manifest V3 quan aquests esdeveniments hagin d'aplicar el proxy seleccionat. Per a una extensió fixada intencionadament en una sola 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);

El manifest ha de declarar el permís de proxy i nomenar aquest worker de fons. Per a una ruta pública permesa sense autenticació de proxy, substitueix el punt final per un candidat de la llista de proxys HTTP, mantenint el port com a enter.

onStartup és l'inici del perfil amb l'extensió instal·lada. onInstalled també cobreix les actualitzacions, inclosa la recàrrega d'una extensió desempaquetada, que compta com a actualització. L'esdeveniment de creació de finestra descriu cada finestra i pot disparar-se diverses vegades en una sessió.

Si l'extensió té perfils desats o un interruptor d'apagada, fes que el gestor carregui i apliqui aquesta elecció en lloc de restablir un valor predeterminat fixat a cada actualització. El registre d'oients es manté al nivell superior; la feina asíncrona pot començar quan Chrome crida el gestor.

Prova la instal·lació i l'inici del perfil per separat durant el desenvolupament, comprovant el resultat de la configuració de cadascun. Són dos camins d'inicialització, no una prova obtinguda obrint una altra finestra.

Articles relacionats