Глобальний проксі-API Firefox вимагає доступу до приватних вікон
Перевірте доступ розширення до приватного перегляду, коли proxy.settings.set видає помилку, бо глобальна конфігурація впливає і на звичайні, і на приватні вікна.
Глобальні налаштування проксі у Firefox впливають як на звичайні, так і на приватні вікна. Тому проксі-API settings вимагає, щоб розширення мало доступ до приватних вікон, навіть якщо операцію розпочато зі звичайного вікна.
Розширення може перевірити цю умову перед зміною налаштування:
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 — це наявний об'єкт конфігурації у форматі Firefox. Розширенню також потрібен звичайний дозвіл на проксі-API.
Якщо маніфест дозволяє приватне використання, користувач керує цим доступом у відомостях про керування розширенням через Run in Private Windows. Перевірка повідомляє про цей вибір; вона не надає дозвіл автоматично.
Без потрібного доступу proxy.settings.set викидає виняток. Це відбувається до того, як розширення продемонструвало будь-яке з'єднання із запропонованим проксі, тому заміна його IP чи порту не пов'язана з цією помилкою.
Обробіть відмову в інтерфейсі розширення та збережіть вибір користувача. Після успішного отримання дозволу й застосування конфігурації окремо оцініть фактичний маршрут призначення.