Tillämpa en Chrome-proxy vid tilläggets starthändelser
Registrera körtids- och installationshanterare för ett Manifest V3-proxytillägg i stället för att knyta initieringen till ett nytt webbläsarfönster.
Registrera onStartup och onInstalled synkront på översta nivån i en Manifest V3-tjänstearbetare när dessa händelser ska tillämpa den valda proxyn. För ett tillägg som medvetet är låst till en enda rutt:
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);Manifestet måste deklarera proxybehörigheten och namnge denna bakgrundsarbetare. För en tillåten offentlig surfrutt utan proxyautentisering, ersätt slutpunkten med en kandidat från HTTP-proxylistan, och låt porten vara ett heltal.
onStartup är profilstart med tillägget installerat. onInstalled omfattar även uppdateringar, inklusive omladdning av ett opaketerat tillägg, vilket räknas som en uppdatering. Fönster-skapad-händelsen beskriver varje fönster och kan utlösas upprepade gånger i en session.
Om tillägget har sparade profiler eller en avstängningsknapp ska hanteraren läsa in och tillämpa det valet i stället för att återställa en hårdkodad standard vid varje uppdatering. Lyssnarregistreringen stannar på översta nivån; asynkront arbete kan börja när Chrome anropar hanteraren.
Testa installation och profilstart var för sig under utvecklingen, och kontrollera konfigurationsresultatet för vart och ett. Det är två initieringsvägar, inte bevis som erhålls genom att öppna ett annat fönster.