Electron קוקן קענען האבן באזונדערע HTTP פּראָקסי חשבונות
שאַפֿט אַ חשבון־ספּעציפֿישע סעסיע פֿאַר יעדער WebContentsView און ענטפֿערט נאָר דעם פּאַסיקן Basic פּראָקסי אַרויסרופֿונג פֿון דעם קוק.
אין איצטיקע Electron פּראָגראַמען, גיט יעדער חשבון־ספּעציפֿישער WebContentsView איר אייגענע באַנאַמטע סעסיע. ווען די פּראָגראַם איז גרייט, קען אַן async העלפֿער אין הויפּט־פּראָצעס קאָנפֿיגורירן איין קוק:
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();
});
שטעלט צו אַ באַזונדער partitionName פֿאַר יעדער איזאָלירטער חשבון און האַלט די צוהערער־וואַריאַבלען אין דער קוק'ס אייגענער closure. אַ נאָמען אָן persist: שאַפֿט אַ סעסיע אין זכּרון. ווידער־ניצן דעם זעלביקן אָפּטייל ניצט באַוווּסט ווידער זיין סעסיע־צושטאַנד.
באַהעפֿט דעם קוק צום באַשטייענדיקן פֿענצטער און נאַוויגירט נאָר נאָך דעם וואָס זיין פּראָקסי און האַנדלער זענען גרייט. דער קאָד צילט דעם איצטיקן login־געשעעניש־אָפּמאַך, אַרייַנגערעכנט firstAuthAttempt, און אַנולירט אַ אָפּגעוואָרפֿענע ווידערהאָלטע פּרוּוו אַנשטאָט איבערשיקן דעם זעלביקן חשבון אָן סוף.
דער האַנדלער פּרוּווט אַז די אַרויסרופֿונג קומט פֿון דעם געמיינטן Basic HTTP פּראָקסי. אַ וועבזייטל'ס אַרײַנלאָגירן איז נישט פּאַסיק פֿאַר די באַגלייבשאַפֿטן.
פּראָקסי־כּללים קלייבן דעם ענדפּונקט; login פֿאַרזאָרגט דעם חשבון. PAC טעקעס און מאַנועלע פּראָקסי־כּללים טראָגן נישט אַליין דאָס פּאַראָל פֿון דעם callback.
דאָס איז HTTP פּראָקסי־אויטענטיפֿיקאַציע. עס לייגט נישט צו SOCKS5־אויטענטיפֿיקאַציע צו Chromium. באַשטייענדיקע סעסיע־פֿאַרבינדונגען דאַרפֿן אויך זייער געוויינטלעך לעבנס־ציקל באַהאַנדלונג ווען אַ וועג ווערט שפּעטער געביטן.