Cosa restituisce resolveProxy di Electron
Attendi la decisione specifica per l'URL dalla sessione reale della finestra e distingui la stringa restituita in stile PAC da una connessione completata.
In una funzione asincrona del processo principale con una finestra esistente, interroga la sessione che la finestra usa realmente:
const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');
L'API attuale restituisce una Promise che si risolve in una stringa. Attendi un'operazione setProxy in sospeso prima di esaminare una modifica di configurazione.
Il risultato è una decisione proxy specifica per l'URL. Un valore ipotetico potrebbe essere:
PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT
Si tratta di un elenco ordinato di candidati con sintassi in stile PAC, non di un singolo nome host. DIRECT rappresenta esplicitamente un candidato diretto. Gestisci un risultato vuoto separatamente; non considerare silenziosamente ogni stringa vuota o non riconosciuta come DIRECT.
Interroga l'URL di destinazione reale, perché le decisioni PAC e di bypass possono variare in base alla destinazione. Allo stesso modo, una finestra che usa una sessione partizionata non deve necessariamente avere la stessa policy di session.defaultSession.
La risoluzione del proxy può comportare un lavoro di configurazione automatica, come ottenere uno script PAC. La scelta restituita non è comunque una richiesta completata al sito web di destinazione, né un accesso proxy riuscito, né una prova del suo IP di uscita pubblico. Conserva la sessione, l'URL e i candidati risolti quando li confronti con l'esito della richiesta successiva.