تنظیمات پروکسی سراسری 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 یا پورت آن به این خطا مربوط نیست.

رد شدن را در رابط افزونه مدیریت کنید و انتخاب کاربر را حفظ کنید. پس از موفقیت مجوز و اعمال پیکربندی، مسیر واقعی مقصد را جداگانه ارزیابی کنید.

مقالات مرتبط