Spring에서는 RestTemplate 클래스를 사용하여 JSON 응답을 반환하고 JSON 요청을 보내는 API를 호출할 수 있습니다.
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
import java.util.HashMap;
import java.util.Map;
public class ApiClient {
public static void main(String[] args) {
// RestTemplate 객체 생성
RestTemplate restTemplate = new RestTemplate();
// 요청 페이로드를 Map 개체로 정의
Map<String, String> payload = new HashMap<>();
payload.put("key1", "value1");
payload.put("key2", "value2");
// JSON 데이터를 보내고 있음을 나타내도록 요청의 헤더를 설정합니다.
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
// 페이로드 및 헤더를 사용하여 요청 엔터티 만들기
HttpEntity<Map<String, String>> requestEntity = new HttpEntity<>(payload, headers);
// POST 요청을 API에 보내고 응답 받기
ResponseEntity<String> responseEntity = restTemplate.postForEntity(
"https://example.com/api/data",
requestEntity,
String.class);
// 응답 본문을 문자열로 가져오기
String responseBody = responseEntity.getBody();
// 응답 본문 출력
System.out.println(responseBody);
}
}
이 예제에서는 RestTemplate 클래스를 사용하여 URL 'https://example.com/api/data'에 대한 POST 요청의 JSON 페이로드를 보냅니다. postForEntity 메서드는 요청을 보내고 응답을 받는 데 사용되며 세 가지 매개 변수를 사용합니다.
응답 본문이 문자열로 있으면 프로그램에서 필요에 따라 조작하고 사용할 수 있습니다.
Spring RESTful 에서 GET, POST, PUT, DELETE 메서드 (0) | 2023.07.06 |
---|---|
Spring Api 구축 방식 (0) | 2023.07.06 |
MyBatis query log (변수 매핑된 쿼리 로그 출력) (2) | 2020.02.20 |
스프링 여러 파일 다운로드 (무압축, 다중 다운로드) (3) | 2018.12.27 |
Spring boot 구조 (스프링 부트) (0) | 2018.09.12 |
댓글 영역