@RequestBoby
외부에서 들어오는 요청을 java 객체로 매핑하는 역할을 수행한다.
일반적인 GET 메서드 같은 경우는 url의 파라미터로 전달하기 떄문에 사용하기가 애매하지만 POST, PUT 같은 경우 body를 붙여서 사용할 수 있다.
@RequestHeader
파라미터에서의 params와 비슷하게 여기서는 headers를 추가하여 필요한 내용을 강제할 수 있다.
받을때 사용하는 어노테이션 또한 @RequestHeader를 이용하여 header를 받아 데이터를 꺼내서 사용한다.
key와 value 값만 꺼내서 사용할 수 있다.
위 두 어노테이션을 사용한 예시 코드이다.
@PostMapping("/test")
public ResponseEntity<String> precessData(
@RequestBody UnityData unitydata, @RequestHeader("content-Type") String contentType){
if("application/json".equals(contentType)){
String result = unitydata.compare();
return ResponseEntity.ok(result);
}
else{
return ResponseEntity.badRequest().body("Invaild Content-Type");
}
}
여기에선 unity에 들어오는 객체를 content-type 로 요청된 헤더 값을 받아 온 후, 그 값이 json 타입인 경우, result를 unitydata를 비교한 값을 넣어주게 되고, 그 값을 완료되었다는 신호로 보내주게 되는 것이다.
'백엔드' 카테고리의 다른 글
| JPA란? (0) | 2023.03.08 |
|---|---|
| Get, Post Put API (0) | 2023.02.22 |
| RESTful API란 (0) | 2023.02.05 |
| JSON(JavaScript Object Notation)이란? (1) | 2023.02.05 |