Tengo que hacer una REST
llamada que incluya encabezados personalizados y parámetros de consulta. Configuré mi HttpEntity
solo con los encabezados (sin cuerpo), y uso el RestTemplate.exchange()
método de la siguiente manera:
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);
Esto falla en el extremo del cliente al dispatcher servlet
no poder resolver la solicitud a un controlador. Después de depurarlo, parece que los parámetros de solicitud no se están enviando.
Cuando hago un intercambio con el POST
uso de un cuerpo de solicitud y sin parámetros de consulta, funciona bien.
¿Alguien tiene alguna idea?
exchange
agetForEntity
:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);
por simplicidad.