Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- jwt메서드
- 복합키
- json
- 빈생성안됨
- 최종 프로젝트
- jpa에러
- 1차캐시
- 스프링 부트 기능
- JPA
- uncheck Exception
- Q 클래스
- ERD 작성
- jpa회원가입
- json gson 차이
- Unsatisfied dependency
- queryDSL
- JPA주의사항
- github
- git
- REST API 규칙
- JoinColumn
- 스프링 부트 공식 문서
- @IdClass
- Filter
- spring서버
- Error creating bean with name
- Spring Spring boot 차이
- REST란
- 인텔리제이
- 스프링부트오류
Archives
- Today
- Total
Everyday Dev System
Body가 아닌 Header에 데이터 넣어서 요청하기 본문
RestTemplate 활용하기
restTemplate.getForEntity
restTemplate.postForEntity
restTemplate.exchange(requestEntity, String.class)
client project service 클래스 내에 추가.
public List<ItemDto> exchangeCall(String token) {
// 요청 URL 만들기
URI uri = UriComponentsBuilder
.fromUriString("http://localhost:7071")
.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());
}
@RequestHeader("Authorization") String token
해당 어노테이션을 활용해서 Authorization라는 key 값에 따른 value를 String token에 받아올 수 있다.
@GetMapping("/exchange-call")
public List<ItemDto> exchangeCall(@RequestHeader("Authorization") String token) {
return restTemplateService.exchangeCall(token);
}
.header("X-Authorization", token)
HTTP header에 X-Authorization 이라는 key값에 따른 token을 넣는다.
RequestEntity<User> requestEntity = RequestEntity
.post(uri)
.header("X-Authorization", token)
.body(user);
Server project에 controller에서도 @RequestHeader("X-Authorization") String token으로 받아올 수 있다.
@PostMapping("/exchange-call")
public ItemResponseDto exchangeCall(@RequestHeader("X-Authorization") String token, @RequestBody UserRequestDto requestDto) {
return itemService.exchangeCall(token, requestDto);
}
결과 :