要在RestTemplate中設置請求頭和請求體,可以使用exchange()方法來發送HTTP請求。通過創建一個HttpEntity對象,可以設置請求頭和請求體,并將其作為參數傳遞給exchange()方法。下面是一個示例代碼:
RestTemplate restTemplate = new RestTemplate();
// 設置請求頭
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
// 設置請求體
String requestBody = "{\"key1\": \"value1\", \"key2\": \"value2\"}";
// 創建HttpEntity對象,設置請求頭和請求體
HttpEntity<String> requestEntity = new HttpEntity<>(requestBody, headers);
// 發送POST請求
ResponseEntity<String> responseEntity = restTemplate.exchange("http://api.example.com", HttpMethod.POST, requestEntity, String.class);
String responseBody = responseEntity.getBody();
System.out.println(responseBody);
在上面的代碼中,我們首先創建一個RestTemplate對象。然后,我們設置了請求頭和請求體,并創建了一個HttpEntity對象。最后,我們使用exchange()方法發送了一個POST請求,并獲取了響應體。