Muszę wykonać REST
połączenie, które zawiera niestandardowe nagłówki i parametry zapytania. Ustawiam HttpEntity
tylko z nagłówkami (bez treści) i używam RestTemplate.exchange()
metody w następujący sposób:
HttpHeaders headers = new HttpHeaders();
headers.set("Accept", "application/json");
Map<String, String> params = new HashMap<String, String>();
params.put("msisdn", msisdn);
params.put("email", email);
params.put("clientVersion", clientVersion);
params.put("clientType", clientType);
params.put("issuerName", issuerName);
params.put("applicationName", applicationName);
HttpEntity entity = new HttpEntity(headers);
HttpEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, entity, String.class, params);
Nie udaje się to po stronie klienta, dispatcher servlet
ponieważ nie można rozwiązać żądania do programu obsługi. Po debugowaniu wygląda na to, że parametry żądania nie są wysyłane.
Kiedy dokonuję wymiany za POST
pomocą treści żądania i bez parametrów zapytania, działa to dobrze.
Czy ktoś ma jakieś pomysły?
exchange
nagetForEntity
:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);
dla uproszczenia.