Stel de netwerkroute in op de RESTEasy-client voordat het geannoteerde API-object wordt gemaakt. Een getypeerde API-proxy is een Java-object, niet de doorsturende netwerktussenpersoon.

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

Dit is de Jakarta-API van RESTEasy 6.2, met RESTEasy als de geïnstalleerde clientprovider en MyApi al gedefinieerd door de applicatie. De proxy-argumenten zijn hostnaam, geheel getal poort en proxy-transportschema. Gebruik voor toegestane openbare API-verzoeken een overeenkomend HTTP-eindpunt uit uw service of de HTTP-proxylijst. Houd de bestemming van de API op target; een HTTPS-API kan een HTTP-proxy gebruiken.

Houd de client in leven voor de aanroepen van zijn getypeerde proxy en sluit hem bij voltooiing van het werk. Het API-object retourneren vanuit een al gesloten client-scope laat het zonder transport achter.

Bepaal wie eigenaar is van dat transport. De builderdocumentatie beschrijft de standaardintegratie van Apache HTTP Client. Een meegeleverde ClientHttpEngine verandert de grens: httpEngine overschrijft de SSL- en verbindingsspecifieke configuratie van de builder. Stel proxy en TLS in via de ondersteunde interface van die engine.

Oudere voorbeelden op basis van ClientExecutor configureren in plaats daarvan een ingepakte Apache-client. Volg die generatie in plaats van die in de Jakarta-builder te plakken.

Houd in beide takken de API-hostnaam als TLS-identiteit met verificatie ingeschakeld. Proxy-authenticatie, API-login en certificaatvertrouwen zijn afzonderlijke vereisten; een route alleen biedt niet elk authenticatieschema.

Gerelateerde artikelen