首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何记录http请求的主机头(Spring Boot)

问如何记录http请求的主机头(Spring Boot)
EN

Stack Overflow用户
提问于 2020-08-21 20:44:54
回答 2查看 85关注 0票数 1

我需要查看通过我的Spring Boot应用程序的所有请求的主机头是什么。我尝试记录所有请求标头,但似乎无法记录主机标头。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-09-03 20:51:19

创建一个筛选器,您将能够看到每个可用的标题。下面是一个示例代码:

代码语言:javascript
复制
@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() {}
}
票数 1
EN

Stack Overflow用户

发布于 2020-08-21 22:49:02

打印所有标题的示例代码。

代码语言:javascript
复制
@GetMapping("/headers")
    public String getHeaders(@RequestHeader Map<String, String> headers) {
        headers.forEach((key, value) -> {
            System.out.println(String.format("Header '%s' = %s", key, value));
        });
     return "success";
    }

这会对你有帮助!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63523188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档