Metode za konfiguraciju HttpClient-a u Reactor Netty-ju vraćaju referencu na konfigurisani klijent. Ako taj rezultat odbacite, prethodna referenca zadržava svoja stara podešavanja.

Sljedeći kod kreira proxy konfiguraciju, a zatim je gubi:

HttpClient client = HttpClient.create();
client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
    .host("proxy.example").port(8080));

Umjesto toga zadržite vraćenu referencu:

client = client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
    .host("proxy.example").port(8080));

WebClient webClient = WebClient.builder()
    .clientConnector(new ReactorClientHttpConnector(client))
    .build();

Tipovi su Reactor Netty HttpClient i ProxyProvider, te Spring WebClient i ReactorClientHttpConnector. Lančano pozivanje direktno na HttpClient.create() je još jedan način da sačuvate vraćenu konfiguraciju. Za dopuštene zahtjeve prema javnom API-ju lista HTTP proxyja nudi kandidate za host i port iz primjera.

Ista provjera vrijedi i pri postavljanju vremenskih ograničenja odgovora ili obrade preusmjeravanja. Pročitajte ugovor o povratnoj vrijednosti metode umjesto da pretpostavljate da setter mijenja originalni objekat.

Također pratite koja referenca stiže do connector-a. Ponovno dodjeljivanje lokalne varijable nakon kreiranja connector-a ne zamjenjuje klijent koji je taj connector već primio.

Povezani članci