正常通SpringMVC或者SpringBoot框架进入后端,可以在方法上用ServletRequest
接收,在方法内也可转换为HttpServletRequest
来获取请求头中的各种值。
但是如果自定义了一些过滤器,各种方法传递,默认方法参数中并没有携带请求头,这个时候我们又需要用请求头中的一些值,那么可以通过RequestContextHolder.getRequestAttributes()
获取
/**
* 全局中获取请求头中信息
* @return
*/
public static String getHeader() {
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (null != requestAttributes) {
HttpServletRequest request = requestAttributes.getRequest();
return request;
}
return null;
}
在请求头里,我们可以通过自定义的name
获取指定的值,可以拿到session,可以拿到uri、url等等