RESTEasy 6.2: క్లయింట్ బిల్డర్పై ఫార్వర్డ్ ప్రాక్సీ సెట్ చేయండి
టైప్డ్ API ప్రాక్సీని సృష్టించే ముందు RESTEasy యొక్క HTTP రవాణాను కాన్ఫిగర్ చేయండి మరియు ఉపయోగిస్తున్న HTTP ఇంజిన్ను పరిగణించండి.
అనోటేటెడ్ API ఆబ్జెక్ట్ను సృష్టించే ముందు RESTEasy క్లయింట్పై నెట్వర్క్ మార్గాన్ని సెట్ చేయండి. టైప్డ్ 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);ఇది RESTEasy 6.2 యొక్క Jakarta API, ఇందులో RESTEasy ఇన్స్టాల్ చేసిన క్లయింట్ ప్రొవైడర్ మరియు MyApi అప్లికేషన్ ద్వారా ఇప్పటికే నిర్వచించబడింది. ప్రాక్సీ ఆర్గ్యుమెంట్లు హోస్ట్నేమ్, పూర్ణాంక పోర్ట్ మరియు ప్రాక్సీ రవాణా స్కీమ్. అనుమతించిన పబ్లిక్ API అభ్యర్థనల కోసం మీ సేవ నుండి సరిపోలే HTTP ఎండ్పాయింట్ లేదా HTTP ప్రాక్సీ జాబితా ఉపయోగించండి. API యొక్క గమ్యాన్ని target పై ఉంచండి; HTTPS API HTTP ప్రాక్సీని ఉపయోగించగలదు.
క్లయింట్ను దాని టైప్డ్ ప్రాక్సీ కాల్ల కోసం సజీవంగా ఉంచి, పని పూర్తయ్యాక మూసివేయండి. ఇప్పటికే మూసిన క్లయింట్ స్కోప్ నుండి API ఆబ్జెక్ట్ను తిరిగి ఇస్తే అది రవాణా లేకుండా మిగిలిపోతుంది.
ఆ రవాణా ఎవరిదో నిర్ణయించండి. బిల్డర్ డాక్యుమెంటేషన్ డిఫాల్ట్ Apache HTTP Client ఇంటిగ్రేషన్ను వివరిస్తుంది. అందించిన ClientHttpEngine సరిహద్దును మారుస్తుంది: httpEngine బిల్డర్ యొక్క SSL మరియు కనెక్షన్-నిర్దిష్ట కాన్ఫిగరేషన్ను భర్తీ చేస్తుంది. ప్రాక్సీ మరియు TLSను ఆ ఇంజిన్ మద్దతు ఇచ్చే ఇంటర్ఫేస్ ద్వారా సెట్ చేయండి.
ClientExecutor ఆధారిత పాత ఉదాహరణలు దానికి బదులుగా చుట్టబడిన Apache క్లయింట్ను కాన్ఫిగర్ చేస్తాయి. Jakarta బిల్డర్లో అతికించే బదులు ఆ తరానికి సరిపోండి.
రెండు శాఖలలో API హోస్ట్నేమ్ను TLS గుర్తింపుగా ఉంచి, ధృవీకరణ ప్రారంభంలో ఉంచండి. ప్రాక్సీ ప్రామాణీకరణ, API లాగిన్ మరియు సర్టిఫికెట్ విశ్వాసం వేర్వేరు అవసరాలు; మార్గం మాత్రమే అన్ని ప్రామాణీకరణ పథకాలను అందించదు.