Setați ruta de rețea pe clientul RESTEasy înainte de a crea obiectul API adnotat. Un proxy API tipizat este un obiect Java, nu intermediarul de rețea care redirecționează.

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

Acesta este API-ul Jakarta al RESTEasy 6.2, cu RESTEasy ca furnizor de client instalat și MyApi deja definit de aplicație. Argumentele proxy-ului sunt numele de gazdă, portul întreg și schema de transport a proxy-ului. Pentru cererile permise către API-uri publice, folosiți un endpoint HTTP corespunzător din serviciul dvs. sau lista de proxy-uri HTTP. Păstrați destinația API-ului pe target; un API HTTPS poate folosi un proxy HTTP.

Păstrați clientul în viață pentru apelurile proxy-ului său tipizat, apoi închideți-l la finalizarea lucrării. Returnarea obiectului API dintr-un domeniu de client deja închis îl lasă fără transport.

Decideți cine deține acel transport. Documentația builderului descrie integrarea implicită Apache HTTP Client. Un ClientHttpEngine furnizat schimbă limita: httpEngine înlocuiește configurația SSL și configurația specifică conexiunii a builderului. Setați proxy-ul și TLS prin interfața acceptată a acelui motor.

Exemplele mai vechi bazate pe ClientExecutor configurează în schimb un client Apache înfășurat. Aliniați-vă la acea generație în loc să îl lipiți în builderul Jakarta.

În ambele ramuri, păstrați numele de gazdă al API-ului ca identitate TLS cu verificarea activată. Autentificarea proxy-ului, autentificarea în API și încrederea în certificat sunt cerințe separate; o rută singură nu oferă toate schemele de autentificare.

Articole similare