De proxymethode van Reactor Netty geeft de geconfigureerde client terug
Bewaar de HttpClient die proxy() teruggeeft voordat je die aan ReactorClientHttpConnector geeft; de oorspronkelijke client blijft ongewijzigd.
De configuratiemethoden van HttpClient in Reactor Netty geven een verwijzing naar een geconfigureerde client terug. Als dat resultaat wordt weggegooid, behoudt de eerdere verwijzing de eerdere instellingen.
Dit maakt een proxyconfiguratie en verliest die daarna:
HttpClient client = HttpClient.create();
client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
Bewaar in plaats daarvan de teruggegeven verwijzing:
client = client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
WebClient webClient = WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(client))
.build();
De typen zijn HttpClient en ProxyProvider van Reactor Netty, plus WebClient en ReactorClientHttpConnector van Spring. Method chaining rechtstreeks vanaf HttpClient.create() is een andere manier om de teruggegeven configuratie te behouden. Voor toegestane openbare API-verzoeken levert de HTTP-proxylijst kandidaten voor de host en poort uit het voorbeeld.
Dezelfde controle geldt bij het instellen van responstime-outs of het afhandelen van redirects. Lees het retourcontract van de methode in plaats van aan te nemen dat een setter het oorspronkelijke object aanpast.
Volg ook welke verwijzing de connector bereikt. Een lokale variabele opnieuw toewijzen nadat een connector is gebouwd, vervangt niet de client die de connector al heeft ontvangen.