Irreġistra onStartup u onInstalled b'mod sinkroniku fil-livell ta' fuq ta' service worker Manifest V3 meta dawk l-avvenimenti għandhom japplikaw il-proxy magħżul. Għal estensjoni ffissata apposta fuq rotta waħda:

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);

Il-manifest irid jiddikjara l-permess tal-proxy u jsemmi dan il-worker fl-isfond. Għal rotta pubblika permessa mingħajr awtentikazzjoni tal-proxy, ibdel il-punt tat-tmiem b'kandidat mil-lista tal-proxy HTTP, u ħalli l-port numru sħiħ.

onStartup huwa l-bidu tal-profil bl-estensjoni installata. onInstalled jinkludi wkoll aġġornamenti, inkluż it-tagħbija mill-ġdid ta' estensjoni mhux ippakkjata li titqies bħala aġġornament. L-avveniment tal-ħolqien tat-tieqa jiddeskrivi kull tieqa u jista' jseħħ ripetutament f'sessjoni waħda.

Jekk l-estensjoni għandha profili salvati jew swiċċ li jitfi, ħalli l-handler jgħabbi u japplika dik l-għażla minflok ma jerġa' jistabbilixxi valur awtomatiku kodifikat f'kull aġġornament. Ir-reġistrazzjoni tas-semmiegħa tibqa' fil-livell ta' fuq; ix-xogħol asinkroniku jista' jibda meta Chrome isejjaħ l-handler.

Ittesta l-installazzjoni u l-bidu tal-profil separatament waqt l-iżvilupp, filwaqt li tivverifika r-riżultat tal-konfigurazzjoni għal kull wieħed. Dawn huma żewġ toroq tal-inizjalizzazzjoni, mhux evidenza li tinkiseb billi tiftaħ tieqa oħra.

Artikli relatati