Primijenite Chrome proxy pri događajima pokretanja proširenja
Registrirajte rukovatelje pokretanja i instalacije za Manifest V3 proxy proširenje umjesto vezivanja inicijalizacije uz novi prozor preglednika.
Registrirajte onStartup i onInstalled sinkrono na najvišoj razini service workera Manifest V3 kada ti događaji trebaju primijeniti odabrani proxy. Za proširenje namjerno vezano uz jednu rutu:
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);manifest mora deklarirati dopuštenje za proxy i imenovati ovaj pozadinski worker. Za dopuštenu rutu javnog pregledavanja bez proxy autentikacije zamijenite krajnju točku kandidatom s popisa HTTP proxyja, a port ostavite cijelim brojem.
onStartup je pokretanje profila s instaliranim proširenjem. onInstalled obuhvaća i ažuriranja, uključujući ponovno učitavanje neupakiranog proširenja koje se računa kao ažuriranje. Događaj stvaranja prozora opisuje svaki prozor i može se ponavljati u jednoj sesiji.
Ako proširenje ima spremljene profile ili prekidač za isključivanje, neka rukovatelj učita i primijeni taj odabir umjesto da pri svakom ažuriranju vraća tvrdo kodiranu zadanu vrijednost. Registracija slušatelja ostaje na najvišoj razini; asinkroni rad može početi kada Chrome pozove rukovatelja.
Tijekom razvoja odvojeno isprobajte instalaciju i pokretanje profila, provjeravajući rezultat konfiguracije za svaki. To su dva puta inicijalizacije, a ne dokaz dobiven otvaranjem drugog prozora.