As configurações de proxy do NW.js diferem entre pedidos Chromium e Node
Configure as regras de proxy do motor web do NW.js separadamente das bibliotecas Node usadas pela mesma aplicação de desktop.
O NW.js pode carregar uma imagem DOM e obter JSON através de uma biblioteca Node na mesma janela. Identifique a chamada que cria o pedido antes de escolher uma interface de proxy.
Para o caminho documentado do motor web:
nw.App.setProxyConfig('proxy.example:8080', '');
const route = nw.App.getProxyForURL('https://www.example.com/');
O primeiro argumento é a regra de proxy e o segundo é o URL PAC. Isto seleciona um ponto final HTTP fixo para os esquemas de destino quando o PAC está vazio; o HTTPS usa o seu caminho de túnel suportado. Num teste independente de uma página pública sem autenticação de proxy, uma entrada da lista de proxies HTTP pode substituir esse ponto final.
| Produtor do pedido | Política a inspecionar |
|---|---|
| Recurso DOM ou fetch do navegador | Configuração de proxy do motor web do NW.js |
| HTTP do núcleo do Node ou transporte próprio de um pacote | O agente ou a interface de proxy pública desse cliente |
getProxyForURL devolve texto de política ao estilo PAC para um carregamento DOM, como PROXY mais um ponto final ou DIRECT. Não confirma que um pedido concluído o tenha usado.
Alterar process.env.http_proxy não faz com que todas as implementações leiam a variável. Rotule os diagnósticos com o nome do produtor ou cliente e o seu resultado. Use a configuração pública desse pacote em vez de corrigir ficheiros node_modules que uma atualização substitui. Para chamadas HTTPS do núcleo do Node com SOCKS, uma dessas interfaces é um agente HTTPS compatível com SOCKS.