Я занимаюсь разработкой приложения, в котором используется микропрофильный отдых клиента.И этот оставшийся клиент должен отправить запрос REST с различным заголовком http.Некоторые имена заголовков изменяются динамически.Мой клиент отдыха с микропрофилями должен быть универсальным, но я не нашел, как реализовать такое поведение.В соответствии с документацией вам необходимо указать все имена заголовков в реализации с помощью аннотаций, и это не является общим.Есть ли способ, как "взломать" его и добавить заголовки HTTP программно?
Заранее спасибо
GenericRestClient genericRestClient = null;
Map<String, Object> appConfig = context.appConfigs();
String baseUrl = (String) appConfig.get("restClient.baseUrl");
path = (String) appConfig.get("restClient.path");
try {
genericRestClient = RestClientBuilder.newBuilder()
.baseUri(new URI(baseUrl)).build(GenericRestClient.class);
}catch(URISyntaxException e){
logger.error("",e);
throw e;
}
Response response = genericRestClient.sendMessage(path, value);
logger.info("Status: "+response.getStatus());
logger.info("Response body: "+response.getEntity().toString());
Общий код клиента отдыха:
@RegisterRestClient
public interface GenericRestClient {
@POST
@Path("{path}")
@Produces("application/json")
@Consumes("application/json")
public Response sendMessage(<here should go any map of custom headers>, @PathParam("path") String pathParam, String jsonBody);
}