<예시 상황>
7070은 서버 포트 / 8080은 클라이언트 포트
- 서버의
/api/server/get-call-obj로RequestParam으로"query"에 대해 기입 받은 내용을
get 메서드로 보내 값을 가져오려 한다.
우선 Di 의존성 주입부터,

다른 애들과는 다르게 RestTemplateBuilder 라는 클래스를 통해 build() 메서드로 생성한다.

자 일단, Uri 를 생성해서 해당 Uri 와 서버로 보내서 받고자 하는 자료형을 적어 getForEntity 로 보내면 7070 포트의 Uri 에 Get 메서드가 전송된다.
사진 상 ItemDto 로 반환 받고자 했다.


사실상 간단하게 들어오는 Controller 구현해주고, 해당 로직 처리를 위한 Service 구현을 한다.
유념해야 할 점은 너무 당연하지만
Client에서 보내는 형식과Server에서 받는 형식,
Server에서 보내는 형식과Client에서 받는 형식을 맞추자.

Get 방식과 비슷하지만 다른 점은 postForEntity 메서드를 통해 보내야 한다.
이번엔 바디에 값이 잘 들어갔는지 보기 위해 User 의 정보도 넣어본다.


뭐 너무 당연하고 위와 비슷하다.

새롭게 달라진 것은 header 에 값을 추가로 넣는다.
HTTP 메서드, 헤더, URI 변수 등을 세부적으로 설정할 수 있는 특징이 있다.
여기서는 토큰 값을 헤더에 넣었고 JSONObject 를 아래와 같이 활용했다.

응답 받은 객체 자체가 json 형태를 가진 리스트 형태라 보기 힘들다.
따라서 해당 라이브러리를 통해 키 값으로 새로운 JSONArray 라는 리스트에 담을 수 있게 만들어져 있고,
해당 리스트에 담기면 ArrayList 와 같이 사용할 수 있다.