RESTEasy 6.2: postavljanje prednjeg proksija na graditelju klijenta
Konfigurišite HTTP transport RESTEasy pre kreiranja tipiziranog API proksija i uzmite u obzir HTTP engine koji se koristi.
Postavite mrežnu rutu na RESTEasy klijentu pre kreiranja anotiranog API objekta. Tipizirani API proksi je Java objekat, a ne mrežni posrednik napred.
import jakarta.ws.rs.client.ClientBuilder;
import org.jboss.resteasy.client.jaxrs.ResteasyClient;
import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder;
ResteasyClientBuilder builder =
(ResteasyClientBuilder) ClientBuilder.newBuilder();
ResteasyClient client = builder
.defaultProxy("proxy.example.net", 8080, "http")
.build();
MyApi api = client
.target("https://api.example.net")
.proxy(MyApi.class);Ovo je Jakarta API RESTEasy 6.2, sa RESTEasy kao instaliranim provajderom klijenta i MyApi koji je aplikacija već definisala. Argumenti proksija su ime hosta, celobrojni port i šema transporta proksija. Za dozvoljene zahteve ka javnim API-jima koristite odgovarajuću HTTP krajnju tačku iz svoje usluge ili listu HTTP proksija. Zadržite odredište API-ja na target; HTTPS API može koristiti HTTP proksi.
Držite klijenta živim za pozive njegovog tipiziranog proksija, zatim ga zatvorite po završetku posla. Vraćanje API objekta iz već zatvorenog opsega klijenta ostavlja ga bez transporta.
Odlučite kome pripada taj transport. Dokumentacija graditelja opisuje podrazumevanu integraciju Apache HTTP Client. Dostavljeni ClientHttpEngine menja granicu: httpEngine zamenjuje SSL i konfiguraciju specifičnu za vezu graditelja. Postavite proksi i TLS kroz podržani interfejs tog enginea.
Stariji primeri zasnovani na ClientExecutor umesto toga konfigurišu umotani Apache klijent. Prilagodite se toj generaciji umesto da je zalepite u Jakarta graditelj.
U obe grane držite ime hosta API-ja kao TLS identitet sa omogućenom verifikacijom. Autentifikacija proksija, prijava na API i poverenje u sertifikat su odvojeni zahtevi; sama ruta ne pruža sve šeme autentifikacije.