Sau giai đoạn ứng dụng Electron sẵn sàng, hãy cấu hình phiên mà cửa sổ sẽ thực sự sử dụng:

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 }
});

Dùng các import/vòng đời hiện có của ứng dụng. Các yêu cầu của cửa sổ này dùng proxySession; các ứng dụng khách Node tùy ý và phân vùng khác không kế thừa nó. Đối với duyệt web công khai được phép, danh sách proxy SOCKS5 cung cấp các điểm cuối ứng viên; hãy chọn một điểm không cần tài khoản SOCKS cho đường dẫn được Chromium hỗ trợ.

Với một phiên đã dùng, hãy quyết định làm gì với các kết nối được gom nhóm. Electron ghi nhận closeAllConnections() ở nơi tuyến cũ nếu không sẽ có thể còn lại; gọi nó có thể làm gián đoạn công việc đang chạy. Cập nhật cài đặt không di chuyển các socket hiện có.

Dùng resolveProxy cho URL thực tế để kiểm tra lựa chọn. Xác nhận kết nối/lối ra riêng biệt, bao gồm các trường hợp bỏ qua và các phiên được cấu hình độc lập.

Phần triển khai SOCKS5 của Chromium không hỗ trợ phương thức xác thực SOCKS. Các callback đăng nhập HTTP và mật khẩu trong URL không bổ sung điều đó. Với dịch vụ yêu cầu thông tin đăng nhập, hãy dùng một cách bố trí tương thích đã được ghi nhận thay vì gỡ xác thực khỏi trình lắng nghe dùng chung.

Bài viết liên quan