La configuración de proxy de NW.js difiere entre las solicitudes de Chromium y Node
Configure las reglas de proxy del motor web de NW.js por separado de las bibliotecas Node que usa la misma aplicación de escritorio.
NW.js puede cargar una imagen DOM y obtener JSON mediante una biblioteca Node en la misma ventana. Identifique la llamada que crea la solicitud antes de elegir una interfaz de proxy.
Para la ruta documentada del motor web:
nw.App.setProxyConfig('proxy.example:8080', '');
const route = nw.App.getProxyForURL('https://www.example.com/');
El primer argumento es la regla de proxy y el segundo la URL del PAC. Esto selecciona un punto final HTTP fijo para los esquemas de destino cuando el PAC está vacío; HTTPS usa su ruta de túnel compatible. En una prueba independiente de una página pública sin autenticación de proxy, una entrada de la lista de proxies HTTP puede sustituir ese punto final.
| Productor de la solicitud | Política que se debe inspeccionar |
|---|---|
| Recurso del DOM o fetch del navegador | Configuración de proxy del motor web de NW.js |
| HTTP del núcleo de Node o un transporte propio de un paquete | El agente o la interfaz de proxy pública de ese cliente |
getProxyForURL devuelve texto de política al estilo PAC para una carga del DOM, como PROXY más un punto final o DIRECT. No confirma que una solicitud completada lo haya usado.
Cambiar process.env.http_proxy no hace que todas las implementaciones lean la variable. Etiquete los diagnósticos con el nombre del productor o cliente y su resultado. Use la configuración pública de ese paquete en lugar de parchear archivos de node_modules que una actualización reemplaza. Para las llamadas HTTPS del núcleo de Node con SOCKS, una de esas interfaces es un agente HTTPS compatible con SOCKS.