Erregistratu Chrome MV3 proxy autentifikazio entzule bakar bat profilak aldatzeko
Erregistratu Manifest V3 autentifikazio entzulea modu sinkronoan eta irakurri uneko proxy kontua gertaeraren itzulera-deian.
Proxy profilak aldatzeak hautatutako kontua aldatu beharko luke, ez onAuthRequired entzule beste bat gehitu. Bestela, closure zaharrek aurreko hautaketaren kontuarekin erantzuten jarrai dezakete.
Erregistratu entzule izendatu bat service workerraren goiko mailan. Irakurri uneko kontua gertaera bat iristean:
function answerProxyChallenge(details, reply) {
if (!details.isProxy) {
reply({});
return;
}
chrome.storage.session.get('selectedProxy').then(({selectedProxy: p}) => {
if (!p || details.challenger.host !== p.host ||
details.challenger.port !== p.port) {
reply({});
return;
}
reply({authCredentials: {username: p.username, password: p.password}});
}).catch(() => reply({cancel: true}));
}
chrome.webRequest.onAuthRequired.addListener(
answerProxyChallenge,
{urls: ['<all_urls>']},
['asyncBlocking'],
);Zati honek suposatzen du luzapenak hautatutako HTTP proxya selectedProxy pean gordetzen duela jada, portu numeriko batekin eta xede duen kontuarekin. Manifestuak webRequest, webRequestAuthProvider, storage eta beharrezko ostalari-baimenak behar ditu. Proxy hautaketak berak ere proxy baimena behar du.
Erregistroa sinkronoki gertatzen da. Biltegia itzulera-deian irakurtzen da, Chrome-k bidaltzeko entzule instalatu bat duenetik. Hasierako storage promesa ebazten denean soilik erregistratzeak esnatze-hutsunea sortzen du.
Gehitu ukapen-muga bat argitaratu aurretik
Zatiak erregistroa eta kontu-hautaketa erakusten ditu. Gehitu saiakera berriko erregistro mugatu bat eskaera bakoitzeko, ukatutako pasahitza mugagabe bidal ez dadin. Garbitu erregistro hori osatzean edo huts egitean. Workerren globals-ak desagertu daitezke workerra gelditzen denean, beraz gorde esnatzeen artean behar den egoera luzapenaren biltegi-eremu egokian.
storage.session workerraren berrabiarazteak gainditzen ditu nabigatzailearen saioaren barruan; ez da kontu-biltegi iraunkorra nabigatzailearen berrabiarazteen artean. Definitu zer egiten duen luzapenak hautatutako konturik eskuragarri ez dagoenean.
isProxy eta challenger egiaztapenek erlaziorik gabeko webgune baten erronkak kontu hau ez hartzea eragozten dute. Nabigatzaileak gertaera inoiz bidaltzen ez badu, entzulearen garbiketak bakarrik ezin du sortu: aztertu benetako eskaera, baimenak eta nabigatzailearen portaera bereizita.