В моем методе я изначально использовал RestTemplate postForObject
метод для отправки запроса в конечную точку. Теперь я должен добавить токен OAuth
по умолчанию и передать его как Post
запрос. Есть ли способ передать как request
, так и Default Header
как часть запроса POST, используя postForObject
?
Initiall, который я использовал ниже postForObject
String result = restTemplate.postForObject(url, request, String.class);
Я ищу что-то вроде ниже
restTemplate.exchange(url,HttpMethod.POST,getEntity(),String.class );
Вот мой код
private final String url;
private final MarkBuild header;
public DataImpl(@Qualifier(OAuth) MarkBuild header,RestTemplate restTemplate) {
this.restTemplate= restTemplate;
this.header = header;
}
public void postJson(Set<String> results){
try {
Map<String, String> requestBody = new HashMap<>();
requestBody.put("news", "data");
JSONObject jsonObject = new JSONObject(requestBody);
HttpEntity<String> request = new HttpEntity<String>(jsonObject.toString(), null);
String result = restTemplate.postForObject(url, request, String.class);
}
}
Ниже getHttpEntity
, который я хочу передать с запросом Post
private HttpEntity getHttpEntity(Set <String>results) {
return new HttpEntity<>( null, getHttpHeaders() );
}
private HttpHeaders getHttpHeaders() {
return header.build();
}
}