بعد مرحلة جاهزية تطبيق Electron، اضبط الجلسة التي ستستخدمها النافذة فعليًا:

const proxySession = session.fromPartition('persist:proxy-work');

await proxySession.setProxy({
  mode: 'fixed_servers',
  proxyRules: 'socks5://127.0.0.1:1080'
});

const window = new BrowserWindow({
  webPreferences: { session: proxySession }
});

استخدم الواردات/دورة الحياة الموجودة في التطبيق. تستخدم طلبات هذه النافذة proxySession؛ ولا ترثها عملاء Node العشوائية والأقسام الأخرى. للتصفح العام المسموح، تقدّم قائمة وكلاء SOCKS5 نقاط نهاية مرشحة؛ اختر واحدة لا تتطلب حساب SOCKS للمسار المدعوم في Chromium.

بالنسبة لجلسة مستخدمة سابقًا، قرّر ما ستفعله بالاتصالات المجمّعة. توثّق Electron closeAllConnections() حيث قد يبقى مسار قديم لولا ذلك؛ واستدعاؤها قد يقطع عملًا جاريًا. تحديث الإعدادات لا ينقل المقابس الموجودة.

استخدم resolveProxy مع عنوان URL الفعلي لفحص الاختيار. تحقّق من الاتصال/الخروج بشكل منفصل، بما في ذلك التجاوزات والجلسات المهيأة بشكل مستقل.

يفتقر تنفيذ SOCKS5 في Chromium إلى دعم طريقة مصادقة SOCKS. عمليات رد نداء تسجيل الدخول عبر HTTP وكلمة مرور في عنوان URL لا تضيفها. للخدمة التي تتطلب بيانات اعتماد، استخدم ترتيبًا متوافقًا موثقًا بدلًا من إزالة المصادقة من مستمع مشترك.

مقالات ذات صلة