หลังจากขั้นตอนความพร้อมของแอปพลิเคชัน 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 }
});

ใช้ import/วงจรชีวิตที่มีอยู่ของแอปพลิเคชัน คำขอของหน้าต่างนี้ใช้ proxySession; ไคลเอนต์ Node ใด ๆ และพาร์ติชันอื่นไม่สืบทอดมัน สำหรับการท่องเว็บสาธารณะที่ได้รับอนุญาต รายการพร็อกซี SOCKS5 เสนอจุดปลายทางที่เป็นตัวเลือก; เลือกอันที่ไม่ต้องใช้บัญชี SOCKS สำหรับเส้นทางที่ Chromium รองรับ

สำหรับเซสชันที่ใช้แล้ว ให้ตัดสินใจว่าจะทำอย่างไรกับการเชื่อมต่อที่รวมกลุ่มไว้ Electron จัดทำเอกสาร closeAllConnections() ในกรณีที่เส้นทางเก่าอาจคงอยู่; การเรียกใช้มันอาจขัดจังหวะงานที่กำลังทำอยู่ การอัปเดตการตั้งค่าไม่ย้ายซ็อกเก็ตที่มีอยู่

ใช้ resolveProxy กับ URL จริงเพื่อตรวจสอบการเลือก ยืนยันการเชื่อมต่อ/ทางออกแยกกัน รวมถึงการข้ามและการกำหนดค่าเซสชันอย่างอิสระ

การใช้งาน SOCKS5 ของ Chromium ไม่รองรับวิธีการยืนยันตัวตน SOCKS คอลแบ็กการเข้าสู่ระบบ HTTP และรหัสผ่านใน URL ไม่ได้เพิ่มการรองรับนั้น สำหรับบริการที่ต้องใช้ข้อมูลรับรอง ให้ใช้การจัดวางที่เข้ากันได้ซึ่งมีเอกสารแทนการลบการยืนยันตัวตนออกจากตัวรับฟังที่ใช้ร่วมกัน

บทความที่เกี่ยวข้อง