在春季靴子2什么是最有效的登录身体的方式?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在春季靴子2什么是最有效的登录身体的方式?相关的知识,希望对你有一定的参考价值。

我曾经使用这个在JAX-RS的过滤器中记录我的请求

@Provider
public class RequestLoggingFilter implements ContainerRequestFilter {
    @Context
    private HttpServletRequest servletRequest;

    @Override
    public void filter(ContainerRequestContext requestContext) throws IOException {

        BufferedInputStream stream = new 
        BufferedInputStream(requestContext.getEntityStream());
        String payload = IOUtils.toString(stream, "UTF-8");
        requestContext.setEntityStream(IOUtils.toInputStream(payload, "UTF-8"));
    }

}

我正在尝试在春季启动2中做类似的事情,我尝试使用过滤器,拦截器和执行器。我一读到它就立刻失去了身体。在弹簧启动2中,执行器的跟踪不支持主体的记录,那么有没有其他方法来记录请求和响应主体而不会丢失它?

答案

您可能会在那里找到所需的一切:http://www.baeldung.com/spring-http-logging

Spring提供了一个内置的有效负载日志解决方案。我们可以通过使用配置插入Spring应用程序来使用现成的过滤器。

AbstractRequestLoggingFilter是一个提供日志记录基本功能的过滤器。子类应覆盖beforeRequest()和afterRequest()方法,以执行围绕请求的实际日志记录。

Spring框架提供了三个具体的实现类,可用于记录传入的请求。这三个类是:

CommonsRequestLoggingFilter Log4jNestedDiagnosticContextFilter(不建议使用)ServletContextRequestLoggingFilter现在,让我们转到CommonsRequestLoggingFilter并将其配置为捕获传入的日志记录请求。

以上是关于在春季靴子2什么是最有效的登录身体的方式?的主要内容,如果未能解决你的问题,请参考以下文章

春季靴子泽西杰克逊

xml 春季靴子

春季安全 |为啥当它们有效时我会得到错误的凭据?

使用 facebook 进行春季社交登录

什么时候调用loadUserByUsername? (春季安全)

如何在时间段为 30 分钟的春季实现会话管理