- Rest Template과 WebClient
Spring Framework 5에서 부터 Spring은 WebClient라는 새로운 HTTP 클라이언트를 도입합니다.
그리고 RestTemplate는 공식적으로 폐지된다고 하니 이번 프로젝트 하면서 WebClient를 사용하였습니다.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-webflux'
}
HttpClient client = HttpClient.create() .responseTimeout(Duration.ofSeconds(1));
WebClient webClient = WebClient.builder() .baseUrl("http://localhost:8020") .defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE) .clientConnector(new ReactorClientHttpConnector(client)) .build();
webClient.post() .uri("/chat/new") .bodyValue(input) .retrieve() .bodyToMono(ChatDTO.class);