Eine lokale Anwendung kann sich mit LittleProxy verbinden, während LittleProxy ihre Anfrage über einen Unternehmens-Parent weiterleitet. Konfigurieren Sie Listener und Parent gemeinsam:

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();

Dieses Fragment für Java 8 oder neuer nutzt die öffentlichen Chaining-Schnittstellen von LittleProxy. Die Anwendung, die den Proxy nutzt, verbindet sich mit 127.0.0.1:8080; der Adapter liefert proxy.office.example:3128 als nächsten Proxy.

Der Manager wird befragt, um vorgelagerte Kandidaten für eine Anfrage bereitzustellen. Dieses Beispiel fügt jedes Mal denselben Parent hinzu. Eine Routing-Regel der Anwendung kann für ein anderes Ziel einen anderen Kandidaten wählen. In einem isolierten Test einer öffentlichen Website, der einen nicht authentifizierten öffentlichen Parent verwenden darf, kann die HTTP-Proxy-Liste die Adresse dieses Adapters bereitstellen, ohne dass Zugangsdaten für den Parent-Proxy konfiguriert sind.

Die Chaining-Typen liegen in org.littleshoot.proxy; DefaultHttpProxyServer liegt in dessen impl-Paket.

Ähnliche Artikel