我需要查看通过我的 Spring Boot 应用程序的所有请求的主机 header 是什么。我尝试记录所有请求 header ,但我似乎无法记录主机 header 。
最佳答案
创建一个过滤器,您将能够看到每个可用的 header 。这是示例代码:
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class RequestFilter implements Filter {
public RequestFilter() {}
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletRequest httpRequest = (HttpServletRequest) request;
Enumeration<String> headerNames = httpRequest.getHeaderNames(); //print this to see all headers
httpRequest.getHeader("host"); //returns the host header
chain.doFilter(req, res);
}
@Override
public void init(FilterConfig filterConfig) {}
@Override
public void destroy() {}
}
关于spring-boot - 我如何记录http请求的主机头(Spring Boot),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63523188/