RestTemplate의 exchange
개발자가 RestTemplate으로 요청을 보낼 때 Header에 특정 정보를 같이 전달할 때 사용
클라이언트 입장의 서버 - service
public List<ItemDto> exchangeCall(String token) {
// 요청 URL 만들기
URI uri = UriComponentsBuilder
.fromUriString("http://localhost:7070")
.path("/api/server/exchange-call")
.encode()
.build()
.toUri();
log.info("uri = " + uri);
User user = new User("Robbie", "1234");
RequestEntity<User> requestEntity = RequestEntity
.post(uri)
.header("X-Authorization", token)
.body(user);
ResponseEntity<String> responseEntity = restTemplate.exchange(requestEntity, String.class);
return fromJSONtoItems(responseEntity.getBody());
}
클라이언트 입장의 서버 - controller
@GetMapping("/exchange-call")
public List<ItemDto> exchangeCall(@RequestHeader("Authorization") String token) {
return restTemplateService.exchangeCall(token);
}
직접 Request Header / Response Header에 담아서 (key, value)형식으로 보냄 << String token 은 원하는 변수명
'TIL' 카테고리의 다른 글
+31 Entity 연관 관계 (0) | 2023.07.17 |
---|---|
+30 Naver Open API (0) | 2023.07.17 |
+28 RestTemplate Get요청 (1) | 2023.07.13 |
+27 Spring Security 로그인 (0) | 2023.07.12 |
+26 RestTemplate이란 무엇일까? (0) | 2023.07.11 |