Electron نىڭ resolveProxy قايتۇرىدىغىنى
كۆزنىكىنىڭ ھەقىقىي سېسىيەسىدىن URL غا خاس قارارنى ساقلاپ، قايتۇرۇلغان PAC ئۇسلۇبىدىكى تىزمىنى تاماملانغان ئۇلىنىشتىن ئايرىڭ.
مەۋجۇت كۆزنەك بىلەن بولغان async ئاساسىي جەريان ئىقتىدارىدا، كۆزنەك ھەقىقەتەن ئىشلىتىۋاتقان سېسىيەنى سوراڭ:
const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');
ھازىرقى API تىزمىغا ھەل قىلىنىدىغان Promise قايتۇرىدۇ. سەپلىمە ئۆزگىرىشىنى تەكشۈرۈشتىن بۇرۇن كۈتۈۋاتقان setProxy مەشغۇلاتىنى ساقلاڭ.
نەتىجە URL غا خاس پروكسى قارارى. پەرەز قىلىنغان قىممەت مۇنداق بولۇشى مۇمكىن:
PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT
بۇ PAC ئۇسلۇبىدىكى گرامماتىكىدا تەرتىپلەنگەن نامزاتلار تىزىملىكى ، بىر خوست نامى ئەمەس. DIRECT بىۋاسىتە نامزاتنى ئېنىق ئىپادىلەيدۇ. قۇرۇق نەتىجىنى ئايرىم بىر تەرەپ قىلىڭ؛ ھەر قانداق قۇرۇق ياكى تونۇلمىغان تىزمىنى سۈكۈتتە DIRECT دەپ قارىماڭ.
ھەقىقىي نىشان URL نى سوراڭ، چۈنكى PAC ۋە چەتلىتىش قارارلىرى مەنزىلگە قاراپ پەرقلىنىشى مۇمكىن. شۇنىڭدەك، بۆلۈنگەن سېسىيە ئىشلىتىدىغان كۆزنەكنىڭ session.defaultSession بىلەن ئوخشاش سىياسىتى بولۇشى شەرت ئەمەس.
پروكسى ھەل قىلىش PAC اسكرىپىنى ئېلىش قاتارلىق ئاپتوماتىك سەپلەش خىزمىتىنى ئۆز ئىچىگە ئېلىشى مۇمكىن. قايتۇرۇلغان تاللاش يەنىلا نىشان تور بېكىتىگە تاماملانغان تەلەپ، مۇۋەپپەقىيەتلىك پروكسى كىرىش ياكى ئۇنىڭ ئاممىۋى چىقىش IP سىنىڭ ئىسپاتى ئەمەس. كېيىنكى تەلەپنىڭ نەتىجىسى بىلەن سېلىشتۇرغاندا سېسىيە، URL ۋە ھەل قىلىنغان نامزاتلارنى ساقلاڭ.