რას აბრუნებს Electron-ის resolveProxy
დაელოდეთ URL-სპეციფიკურ გადაწყვეტილებას ფანჯრის რეალური სესიიდან და განასხვავეთ დაბრუნებული PAC-სტილის სტრიქონი დასრულებული კავშირისგან.
ასინქრონულ მთავარი პროცესის ფუნქციაში არსებული ფანჯრით, ჰკითხეთ სესიას, რომელსაც ფანჯარა რეალურად იყენებს:
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 და ამოხსნილი კანდიდატები, როცა მათ შემდეგი მოთხოვნის შედეგს ადარებთ.