در یک تابع ناهمگام در فرایند اصلی با یک پنجره موجود، نشستی را که آن پنجره واقعاً استفاده می‌کند جویا شو:

const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');

API فعلی یک Promise برمی‌گرداند که به یک رشته تبدیل می‌شود. پیش از بررسی یک تغییر پیکربندی، منتظر یک عملیات setProxy در حال انتظار بمان.

نتیجه یک تصمیم پروکسی مخصوص URL است. یک مقدار فرضی می‌تواند این باشد:

PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT

این یک فهرست مرتب نامزدها با نحو به سبک PAC است، نه یک نام میزبان. DIRECT به‌صراحت نماینده یک نامزد مستقیم است. نتیجه خالی را جداگانه مدیریت کن؛ هر رشته خالی یا ناشناخته را بی‌صدا DIRECT فرض نکن.

URL هدف واقعی را جویا شو، چون تصمیم‌های PAC و عبور ممکن است بر اساس مقصد متفاوت باشند. به همین ترتیب، پنجره‌ای که از نشست تفکیک‌شده استفاده می‌کند لزوماً همان سیاست session.defaultSession را ندارد.

حل پروکسی ممکن است شامل کار پیکربندی خودکار مانند گرفتن یک اسکریپت PAC باشد. انتخاب بازگشتی هنوز درخواست کامل‌شده به وب‌سایت هدف، ورود موفق به پروکسی یا اثبات IP خروجی عمومی آن نیست. هنگام مقایسه با نتیجه درخواست بعدی، نشست، URL و نامزدهای حل‌شده را نگه دار.

مقالات مرتبط