Ange nätverksrutten på RESTEasy-klienten innan det annoterade API-objektet skapas. En typad API-proxy är ett Java-objekt, inte den vidarebefordrande nätverksmäklaren.

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

Detta är RESTEasy 6.2:s Jakarta-API, med RESTEasy som installerad klientleverantör och MyApi redan definierat av applikationen. Proxyargumenten är värdnamn, heltalsport och proxy-transportschena. För tillåtna offentliga API-anrop, använd en matchande HTTP-slutpunkt från din tjänst eller HTTP-proxylistan. Behåll API:ets destination på target; ett HTTPS-API kan använda en HTTP-proxy.

Håll klienten vid liv för anropen till dess typade proxy och stäng den när arbetet är klart. Returneras API-objektet från en redan stängd klientomfattning står det utan transport.

Bestäm vem som äger transporten. Byggarens dokumentation beskriver standardintegrationen av Apache HTTP Client. En medskickad ClientHttpEngine ändrar gränsen: httpEngine åsidosätter byggarens SSL- och anslutningsspecifika konfiguration. Ange proxy och TLS via den motorns stödda gränssnitt.

Äldre exempel baserade på ClientExecutor konfigurerar i stället en inpackad Apache-klient. Följ den generationen i stället för att klistra in den i Jakarta-byggaren.

I båda grenarna, behåll API:ets värdnamn som TLS-identitet med verifiering aktiverad. Proxyautentisering, API-inloggning och certifikattillit är separata krav; en rutt ensam ger inte alla autentiseringsscheman.

Relaterade artiklar