Metoda proxy e Reactor Netty kthen klientin e konfiguruar
Ruaj HttpClient që kthen proxy() përpara se t'ia kalosh ReactorClientHttpConnector; klienti origjinal nuk ndryshon.
Metodat e konfigurimit të HttpClient në Reactor Netty kthejnë një referencë për klientin e konfiguruar. Nëse ai rezultat hidhet, referenca e mëparshme mbetet me cilësimet e mëparshme.
Ky kod krijon një konfigurim proxy dhe pastaj e humb:
HttpClient client = HttpClient.create();
client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
Në vend të kësaj, ruaj referencën e kthyer:
client = client.proxy(spec -> spec.type(ProxyProvider.Proxy.HTTP)
.host("proxy.example").port(8080));
WebClient webClient = WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(client))
.build();
Tipet janë HttpClient dhe ProxyProvider të Reactor Netty, plus WebClient dhe ReactorClientHttpConnector të Spring. Zinxhirimi i metodave drejtpërdrejt nga HttpClient.create() është një mënyrë tjetër për të mbajtur konfigurimin e kthyer. Për kërkesat e lejuara të API-ve publike, lista e proxy-ve HTTP ofron kandidatë për hostin dhe portin e shembullit.
I njëjti kontroll vlen edhe kur caktohen afate të përgjigjes ose trajtimi i ridrejtimeve. Lexoni kontratën e kthimit të metodës në vend që të supozoni se një setter ndryshon objektin origjinal.
Gjurmoni gjithashtu cila referencë arrin te konnektori. Ricaktimi i një ndryshoreje lokale pas ndërtimit të konnektorit nuk e zëvendëson klientin që konnektori ka marrë tashmë.