Kuzinhlelo zokusebenza ze-Electron zamanje, nikeza i-WebContentsView ngayinye exhunywe ne-akhawunti iseshini yayo enegama. Lapho uhlelo selulungile, umsizi we-async ohlelweni oluyinhloko angakwazi ukulungisa i-view eyodwa:

const routeSession = session.fromPartition(partitionName);
await routeSession.setProxy({
  mode: 'fixed_servers',
  proxyRules: `http://${proxyHost}:${proxyPort}`,
});
const view = new WebContentsView({
  webPreferences: { session: routeSession },
});
view.webContents.on('login', (event, details, authInfo, callback) => {
  if (!authInfo.isProxy
      || authInfo.scheme.toLowerCase() !== 'basic'
      || authInfo.host !== proxyHost
      || authInfo.port !== proxyPort) return;
  event.preventDefault();
  if (details.firstAuthAttempt) callback(proxyUser, proxyPassword);
  else callback();
});

Nikeza i-partitionName ehlukile ku-akhawunti ngayinye ehlukanisiwe futhi gcina okuguquguqukayo komlaleli ku-closure yaleyo view. Igama elingenayo i-persist: lidala iseshini ememorini. Ukusebenzisa kabusha ingxenye efanayo kusebenzisa kabusha isimo sayo seseshini ngamabomu.

Namathisela i-view ewindini elikhona futhi uhambe kuphela lapho i-proxy yakho nesibambi sayo sekulungile. Ikhodi iqondisa isivumelwano somcimbi we-login samanje, kuhlanganise ne-firstAuthAttempt, futhi ikhansele umzamo ophindwayo owenqatshiwe esikhundleni sokuthumela kabusha i-akhawunti efanayo ngokungenamkhawulo.

Isibambi sihlola ukuthi inselele ivela ku-Basic HTTP proxy ehlosiwe. Ukungena kwewebhusayithi akufanelekile kulezo zifakazelo.

Imithetho ye-proxy ikhetha iphoyinti lokugcina; i-login inikeza i-akhawunti. Amafayela e-PAC nemithetho ye-proxy yesandla akawathwali ngokwabo iphasiwedi yale callback.

Lokhu ukugunyazwa kwe-HTTP proxy. Akungezi ukugunyazwa kwe-SOCKS5 ku-Chromium. Izixhumanisi zeshini ezikhona nazo zidinga ukuphathwa komjikelezo wempilo ojwayelekile lapho umzila ushintshwa kamuva.

Izihloko ezihlobene