Globalne nastavitve proxyja v Firefoxu vplivajo na običajna in zasebna okna. Zato API proxy.settings zahteva, da ima razširitev dostop do zasebnih oken, tudi ko je bilo dejanje začeto v običajnem oknu.

Razširitev lahko ta pogoj preveri pred spremembo nastavitve:

const allowed = await browser.extension.isAllowedIncognitoAccess();
if (!allowed) {
  throw new Error('Private-window access is required for global proxy settings');
}
await browser.proxy.settings.set({ value: proxyConfig });

proxyConfig je obstoječi konfiguracijski objekt v obliki Firefoxa. Razširitev potrebuje tudi običajno dovoljenje za proxy API.

Ko manifest dovoljuje zasebno uporabo, uporabnik ta dostop nadzira v podrobnostih upravljanja razširitve prek Run in Private Windows. Preverjanje poroča o tej izbiri; dovoljenja ne podeli samodejno.

Brez zahtevanega dostopa proxy.settings.set vrže izjemo. To se zgodi, preden je razširitev pokazala kakršno koli povezavo s predlaganim proxyjem, zato zamenjava njegovega IP naslova ali vrat ni povezana s to napako.

Obravnavajte zavrnitev v vmesniku razširitve in ohranite uporabnikovo izbiro. Ko dovoljenje in uporaba konfiguracije uspeta, ločeno ocenite dejansko pot do cilja.

Sorodni članki