Site Overlay

Forår RestTemplate

Efter at lære at bygge Foråret REST API for XML-repræsentation og JSON repræsentation, giver mulighed for at lære at bygge Foråret RESTEN-klient med brug af Foråret RestTemplate til at forbruge de Api ‘ er som vi har skrevet i tilknytning eksempler. Bemærk: Spring docs anbefaler at bruge den ikke-blokerende, reaktive WebClient, som tilbyder effektiv understøttelse af både sync, async og streaming scenarier. RestTemplate vil blive udskrevet i de fremtidige versioner.,

Spring RestTemplate class

adgang til REST-API ‘ erne inde i en Fjederapplikation drejer sig om brugen af Spring RestTemplate-klassen. RestTemplate class-er designet efter de samme principper, som mange andre Forår *Template klasser (fx, JdbcTemplate JmsTemplate ), hvilket giver en forenklet tilgang med standard adfærd til at udføre komplekse opgaver.

i betragtning af atRestTemplate klasse er en synkron klient, der er designet til at kalde REST-tjenester., Det bør ikke komme som nogen overraskelse, at dens primære metoder er tæt knyttet til REST ‘ s fundament, som er http-protokollens metoder hoved, få, POST, sætte, slette og muligheder.

Building RestTemplate Bean

nedenstående er få eksempler til at opretteRestTemplate bean i applikationen. Vi ser kun på meget enkle bønnedefinitioner. For omfattende konfigurationsindstillinger henvises til RestTemplate-konfiguration med HttpClient.

2, 1. Brug RestTemplateBuilder

2.2. Brug Simpleclienthttpre .uestfactory

2.3., Brug af Apache HTTPClient

@AutowiredCloseableHttpClient httpClient;@Beanpublic RestTemplate restTemplate() { RestTemplate restTemplate = new RestTemplate(clientHttpRequestFactory()); return restTemplate;}@Beanpublic HttpComponentsClientHttpRequestFactory clientHttpRequestFactory() { HttpComponentsClientHttpRequestFactory clientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory(); clientHttpRequestFactory.setHttpClient(httpClient); return clientHttpRequestFactory;}

2.4. Injektion af RestTemplate bean

for at injicere RestTemplate bean, brug den velkendte @Autowired annotation. Hvis du har flere bønner af typen RestTemplate med forskellige konfigurationer, skal du også bruge @Qualifier annotation.

@Autowiredprivate RestTemplate restTemplate;

Forår RestTemplate – HTTP GET-Eksempel

Tilgængelige metoder er:

  • getForObject(url, classType) – hente en repræsentation af at gøre en at KOMME på URL ‘ en., Svaret (hvis nogen) er umarkeret til given klasse type og returneres.
  • getForEntity (url, responseType) – hent en repræsentation som ResponseEntity ved at gøre en GET på URL ‘ en.
  • exchange(requestEntity, responseType) – udføre den angivne RequestEntity og returnerer dette svar, da ResponseEntity.
  • execute(url, httpMethod, requestCallback, responseExtractor) – udføre httpMethod til den givne URI skabelon, forbereder sig på anmodning RequestCallback, og læse svar med en ResponseExtractor.

3, 1., HTTP GET REST API ‘ er

3.2. Spring RestTemplate eksempel for at forbruge REST API

i det givne eksempel henter vi API-svaret i strengform. Vi skal bruge ObjectMapper for at analysere det til POJO, før du bruger det.

denne metode er nyttig, når vi får et unparsable svar fra serveren, og vi har ingen kontrol for at få det rettet på serversiden. Her kan vi få svaret som String, og brug en brugerdefineret parser eller strengudskiftningsfunktioner, før du bruger svaret.

3.3., Spring RestTemplate eksempel for at forbruge API-respons i POJO

i det givne eksempel henter vi API-svaret direkte ind i domæneobjektet.

brug af Getforobject() metode

brug af Getforentity() metode

3.4. Afsendelse af HTTP-overskrifter ved hjælp af RestTemplate

3.5. At sende URL-Parametre, som ved hjælp af RestTemplate

Forår RestTemplate – HTTP POST-Eksempel

Tilgængelige metoder er:

  • postForObject(url, anmodning, classType) – Stillinger i det givne objekt til den URL-adresse, og returnerer den repræsentation, der findes i de svar, som er givet class type.,
  • postForEntity(url, anmodning, responseType) – Stillinger i det givne objekt til URL, og returnerer svaret som ResponseEntity.
  • postForLocation(url, anmodning, responseType) – Stillinger i det givne objekt til URL, og returnerer returnerer værdien af Location header.
  • exchange(url, requestEntity, responseType)
  • execute(url, httpMethod, requestCallback, responseExtractor)

4.1. HTTP POST REST API

POST API, vi vil forbruge i dette eksempel.

4, 2., Spring RestTemplate eksempel for at forbruge post API

Spring REST client ved hjælp af RestTemplate for at få adgang til HTTP POST api anmodninger.

Forår RestTemplate – HTTP SÆTTE Metode Eksempel

Tilgængelige metoder er:

  • sætte(url-adresse, skal bestilles) – Sætter den givne anmodning objekt til URL.

5, 1. HTTP PUT REST API

5.2. Spring RestTemplate eksempel at forbruge PUT API

Spring RestTemplate – http DELETE Method eksempel

tilgængelige metoder er:

  • delete(url) – sletter ressourcen på den angivne URL.

6.1., HTTP DELETE REST API

6.2. Spring RestTemplate eksempel for at forbruge slet API

du er velkommen til at kopiere og ændre ovenstående Spring RestTemplate eksempler til opbygning af Spring REST API forbruger i din Spring Springebmvc ansøgning.,

RestTemplate Eksempler

Forår RestTemplate grundlæggende godkendelse eksempel
Forår RestTemplate timeout-konfiguration eksempel
Forår RestTemplateBuilder Eksempel
Forår RestTemplate – HttpClient-konfiguration eksempel
Forår Boot RestTemplate KOMME Eksempel
Forår Boot RestTemplate INDLÆG Eksempel
Forår boot JUnit eksempel med RestTemplate
Forår boot TestRestTemplate INDLÆG med overskrifter eksempel
Forår ClientHttpRequestInterceptor med RestTemplate

Glade for at Lære !!

var dette indlæg nyttigt?

lad os vide, hvis du kunne lide indlægget., Det er den eneste måde, vi kan forbedre.
Ja
Nej

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *