Ang isang lokal na aplikasyon ay makakakonekta sa LittleProxy habang ipinapasa ng LittleProxy ang kahilingan nito sa pamamagitan ng corporate na magulang. Isaayos ang listener at magulang nang sabay:

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

Ginagamit ng snippet na ito para sa Java 8 o mas bago ang mga pampublikong chaining interface ng LittleProxy. Kumokonekta sa 127.0.0.1:8080 ang aplikasyong gumagamit ng proxy; ibinabalik ng adapter ang proxy.office.example:3128 bilang susunod na proxy.

Kinukunsulta ang manager upang magbigay ng mga upstream na kandidato para sa isang kahilingan. Idinadagdag ng halimbawang ito ang parehong magulang sa bawat pagkakataon. Maaaring pumili ng ibang kandidato ang routing rule ng aplikasyon para sa ibang destinasyon. Sa isang hiwalay na pagsubok sa pampublikong site na pinapayagang gumamit ng hindi awtentikadong pampublikong magulang, maaaring ibigay ng listahan ng HTTP proxy ang address ng adapter na iyon, nang walang naka-configure na kredensyal ng parent proxy.

Ang mga uri ng chaining ay nasa org.littleshoot.proxy; ang DefaultHttpProxyServer ay nasa pakete nitong impl.

Kaugnay na mga artikulo