Primenite Chrome proxy pri događajima pokretanja proširenja
Registrujte rukovaoce pokretanja i instalacije za Manifest V3 proxy proširenje umesto vezivanja inicijalizacije za novi prozor pregledača.
Registrujte onStartup i onInstalled sinhrono na najvišem nivou service workera Manifest V3 kada ti događaji treba da primene izabrani proxy. Za proširenje namerno vezano za 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 da deklariše dozvolu za proxy i imenuje ovaj pozadinski worker. Za dozvoljenu rutu javnog pregledanja bez proxy autentifikacije zamenite krajnju tačku kandidatom sa liste HTTP proxyja, a port ostavite celim brojem.
onStartup je pokretanje profila sa instaliranim proširenjem. onInstalled obuhvata i ažuriranja, uključujući ponovno učitavanje neupakovanog 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 sačuvane profile ili prekidač za isključivanje, neka rukovalac učita i primeni taj izbor umesto da pri svakom ažuriranju vraća tvrdo kodiranu podrazumevanu vrednost. Registracija slušalaca ostaje na najvišem nivou; asinhroni rad može početi kada Chrome pozove rukovaoca.
Tokom razvoja odvojeno isprobajte instalaciju i pokretanje profila, proveravajući rezultat konfiguracije za svaki. To su dva puta inicijalizacije, a ne dokaz dobijen otvaranjem drugog prozora.