Τι επιστρέφει το resolveProxy του Electron
Περίμενε την απόφαση για το συγκεκριμένο URL από την πραγματική συνεδρία του παραθύρου και ξεχώρισε το επιστρεφόμενο αλφαριθμητικό σε στυλ PAC από μια ολοκληρωμένη σύνδεση.
Σε μια ασύγχρονη συνάρτηση της κύριας διεργασίας με υπάρχον παράθυρο, ρώτησε τη συνεδρία που χρησιμοποιεί πραγματικά το παράθυρο:
const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');
Το τρέχον API επιστρέφει ένα Promise που επιλύεται σε αλφαριθμητικό. Περίμενε μια εκκρεμή λειτουργία setProxy πριν ελέγξεις μια αλλαγή διαμόρφωσης.
Το αποτέλεσμα είναι μια απόφαση διαμεσολαβητή (proxy) ειδική για το URL. Μια υποθετική τιμή θα μπορούσε να είναι:
PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT
Αυτή είναι μια διατεταγμένη λίστα υποψηφίων σε σύνταξη στυλ PAC, όχι ένα μόνο όνομα κεντρικού υπολογιστή. Το DIRECT αντιπροσωπεύει ρητά έναν άμεσο υποψήφιο. Χειρίσου το κενό αποτέλεσμα ξεχωριστά· μην αντιμετωπίζεις σιωπηρά κάθε κενό ή μη αναγνωρισμένο αλφαριθμητικό ως DIRECT.
Ρώτησε το πραγματικό URL προορισμού, επειδή οι αποφάσεις PAC και παράκαμψης μπορεί να διαφέρουν ανά προορισμό. Ομοίως, ένα παράθυρο που χρησιμοποιεί διαμερισμένη συνεδρία μπορεί να μην έχει την ίδια πολιτική με το session.defaultSession.
Η επίλυση proxy μπορεί να περιλαμβάνει εργασία αυτόματης διαμόρφωσης, όπως η λήψη ενός σεναρίου PAC. Η επιστρεφόμενη επιλογή εξακολουθεί να μην είναι ολοκληρωμένο αίτημα προς τον ιστότοπο προορισμού, ούτε επιτυχής σύνδεση proxy ούτε απόδειξη της δημόσιας διεύθυνσης IP εξόδου του. Διατήρησε τη συνεδρία, το URL και τους υποψηφίους που επιλύθηκαν όταν τα συγκρίνεις με το αποτέλεσμα του επόμενου αιτήματος.