이번에는 어노테이션 기반 컨트롤러에서 요청을 처리하는 방법에 대해서 알아보려고한다.

이전에는 어떻게 처리했는지와 어노테이션 기반의 처리방법들을 살펴보자.

HttpRequest

헤더 처리

Servlet 이용

@RestController
public class RequestHeaderController {
    @RequestMapping("/headers")
    public String headers(HttpServletRequest request, HttpServletResponse response){ 
        return "ok";
    }
}

어노테이션 이용

@RestController
public class RequestHeaderController {
    @RequestMapping("/headers")
    public String headers(@RequestHeader MultiValueMap<String, String> headerMap,
                          @RequestHeader("host") String host,
                          @CookieValue(value = "myCookie", required = false) String cookie)){ 
        return "ok";
    }
}

그외에도 여러가지 가져오는 방법들이 있다.

@RestController
public class RequestHeaderController {
    @RequestMapping("/headers")
    public String headers(HttpMethod httpMethod,
                          Locale locale,){ 
        return "ok";
    }
}