전송 메서드 종류
- retrieve() : body 값만 가져온다. header/status방식도 따로 존재
- exchange() : body + header + status 등도 가져온다.
Mono에서 값을 꺼내는 방식
- bodyToMono : 데이터가 한번에 0~1 개 처리 될 경우 (동기식)
- bodyToFlux : 데이터가 한번에 여러개 처리 될 경우 (비동기식)
public HashMap<String, String> getSend(String msg) {
// 1. 전송할 URL 설정(현재는 같은 서버를 이용)
WebClient client = WebClient.create("http://localhost");
// 2. 전송받식 (). 요청URI(uri) .전송() . 받아올 방식(형태, 처리방식)
Mono<HashMap> mono = client.get().uri("/return/"+msg).retrieve().bodyToMono(HashMap.class);
// 3. 응답 받은 값 꺼내기
HashMap<String, String> resp = mono.block();
logger.info("resp : {}",resp);
return resp;
}
WebClient를 이용하여 서버간의 통신 구현 해 보기
Client의 요청을 Server에서 받아 다른 Server에 요청을 보내고 그 응답 값을 Client에게 다시 전달 .
https://velog.io/@leema0927/230531-WebClient