O aplicație locală se poate conecta la LittleProxy în timp ce LittleProxy redirecționează cererea prin intermediul unui părinte corporate. Configurați ascultătorul și părintele împreună:

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

Acest fragment pentru Java 8 sau mai nou folosește interfețele publice de înlănțuire LittleProxy. Aplicația care folosește proxy-ul se conectează la 127.0.0.1:8080; adaptorul returnează proxy.office.example:3128 ca proxy următor.

Managerul este interogat pentru a furniza candidați din amonte pentru o cerere. Acest exemplu adaugă același părinte de fiecare dată. Regula de rutare a aplicației poate alege alt candidat pentru o altă destinație. Într-un test izolat pe un site public, în care este permisă folosirea unui părinte public neautentificat, lista de proxy-uri HTTP poate furniza adresa acelui adaptor, fără ca acreditările de proxy părinte să fie configurate.

Tipurile de înlănțuire se află în org.littleshoot.proxy; DefaultHttpProxyServer se află în pachetul său impl.

Articole similare