Задайце сеткавы маршрут у кліенце RESTEasy да стварэння анатаванага аб'екта API. Тыпізаваны проксі API — гэта аб'ект Java, а не прамежкавы сеткавы пасярэднік.

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

Гэта Jakarta API RESTEasy 6.2, дзе RESTEasy выступае ўсталяваным пастаўшчыком кліента, а MyApi ужо вызначаны праграмай. Аргументы проксі — гэта імя хоста, цэлалікавы порт і схема транспарту проксі. Для дазволеных запытаў да публічных API выкарыстоўвайце адпаведную HTTP-канчатковую кропку са свайго сэрвісу або спіс HTTP-проксі. Пакіньце прызначэнне API на target; API па HTTPS можа выкарыстоўваць HTTP-проксі.

Трымайце кліент жывым для выклікаў яго тыпізаванага проксі, затым зачыніце яго пасля завяршэння працы. Вяртанне аб'екта API з ужо зачыненай вобласці кліента пакідае яго без транспарту.

Вызначце, каму належыць гэты транспарт. Дакументацыя канструктара апісвае стандартную інтэграцыю Apache HTTP Client. Перададзены ClientHttpEngine змяняе мяжу: httpEngine замяняе SSL і канфігурацыю, спецыфічную для злучэння, у канструктары. Задайце проксі і TLS праз падтрыманы інтэрфейс гэтага рухавіка.

Старыя прыклады на аснове ClientExecutor замест гэтага наладжваюць абгорнуты кліент Apache. Адпавядайце таму пакаленню, а не ўстаўляйце яго ў канструктар Jakarta.

У любой з галін пакідайце імя хоста API як ідэнтычнасць TLS з уключанай праверкай. Аўтэнтыфікацыя проксі, уваход у API і давер да сертыфіката — асобныя патрабаванні; адзін маршрут не забяспечвае ўсе схемы аўтэнтыфікацыі.

Падобныя артыкулы