从Spring Boot应用程序的服务层获取请求标头

Ula*_*ski 1 java header http spring-boot

在任何应用程序中,春季启动是否有任何方法可以从请求中获取标头?一些静态的东西会很棒.

请注意,@RequestHeader这对我不起作用,因为我需要在服务层上使用此值.

小智 7

您可以HttpServletRequest在服务层中注入对象,如下所示:

@Autowired
HttpServletRequest request;

private void method() {
  request.getHeader("headerName");
}
Run Code Online (Sandbox Code Playgroud)

但请记住,该bean HttpServletRequest具有HTTP请求范围.所以,你不能将它注入异步方法等,因为它会抛出运行时异常:)希望它有所帮助