spring项目中,封装一个获取header的通用方法,使用RequestContextHolder
时间: 2024-02-18 10:06:19 浏览: 233
在Spring项目中,可以使用RequestContextHolder来获取当前请求的HttpServletRequest对象,然后再通过该对象获取header信息,可以封装一个通用方法如下:
```java
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
public class HeaderUtil {
/**
* 获取指定Header值
* @param headerName Header名称
* @return Header值
*/
public static String getHeaderValue(String headerName) {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (attributes != null) {
HttpServletRequest request = attributes.getRequest();
return request.getHeader(headerName);
}
return null;
}
}
```
这样就可以在需要获取Header的地方调用该方法来获取指定Header的值了。使用RequestContextHolder获取HttpServletRequest对象的好处是不需要显式传递HttpServletRequest对象。
阅读全文