Añadir un proxy principal a un oyente de LittleProxy
Vincule un oyente local de LittleProxy con withAddress y proporcione su proxy principal ascendente mediante un ChainedProxyManager.
Una aplicación local puede conectarse a LittleProxy mientras LittleProxy reenvía su petición a través de un proxy principal corporativo. Configure el oyente y el proxy principal juntos:
ChainedProxy parent = new ChainedProxyAdapter() {
@Override
public InetSocketAddress getChainedProxyAddress() {
return new InetSocketAddress("proxy.office.example", 3128);
}
};
ChainedProxyManager manager = (request, candidates) ->
candidates.add(parent);
HttpProxyServer server = DefaultHttpProxyServer.bootstrap()
.withAddress(new InetSocketAddress("127.0.0.1", 8080))
.withChainProxyManager(manager)
.start();
Este fragmento para Java 8 o posterior usa las interfaces públicas de encadenamiento de LittleProxy. La aplicación que usa el proxy se conecta a 127.0.0.1:8080; el adaptador devuelve proxy.office.example:3128 como siguiente proxy.
Se consulta al gestor para que proporcione candidatos ascendentes para una petición. Este ejemplo añade el mismo proxy principal cada vez. La regla de enrutamiento de una aplicación puede elegir otro candidato para un destino distinto. En una prueba aislada de sitio público en la que se permite usar un proxy principal público sin autenticación, la lista de proxies HTTP puede proporcionar la dirección de ese adaptador, sin credenciales de proxy principal configuradas.
Los tipos de encadenamiento están en org.littleshoot.proxy; DefaultHttpProxyServer está en su paquete impl.