Devo effettuare una RESTchiamata che includa intestazioni personalizzate e parametri di query. Ho impostato il mio HttpEntitysolo con le intestazioni (senza corpo) e utilizzo il RestTemplate.exchange()metodo come segue:
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);
Ciò ha esito negativo sul lato client con l' dispatcher servletimpossibilità di risolvere la richiesta a un gestore. Dopo aver eseguito il debug, sembra che i parametri della richiesta non vengano inviati.
Quando faccio uno scambio con l' POSTutilizzo di un corpo della richiesta e senza parametri di query funziona perfettamente.
Qualcuno ha qualche idea?
exchangeingetForEntity:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);per semplicità.