Numa função assíncrona do processo principal com uma janela existente, consulte a sessão que a janela realmente utiliza:

const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');

A API atual devolve uma Promise que é resolvida numa string. Aguarde uma operação setProxy pendente antes de inspecionar uma alteração de configuração.

O resultado é uma decisão de proxy específica do URL. Um valor hipotético poderia ser:

PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT

Isso é uma lista ordenada de candidatos em sintaxe de estilo PAC, não um único nome de host. DIRECT representa explicitamente um candidato direto. Trate um resultado vazio separadamente; não considere silenciosamente toda a string vazia ou não reconhecida como DIRECT.

Consulte o URL de destino real, porque as decisões de PAC e de contorno podem variar consoante o destino. Da mesma forma, uma janela que utiliza uma sessão particionada não tem obrigatoriamente a mesma política que session.defaultSession.

A resolução do proxy pode envolver trabalho de configuração automática, como obter um script PAC. A escolha devolvida continua a não ser um pedido concluído ao site de destino, nem um início de sessão de proxy bem-sucedido, nem prova do seu IP de saída público. Guarde a sessão, o URL e os candidatos resolvidos ao compará-los com o resultado do pedido seguinte.

Artigos relacionados