Spring|Spring Boot 输出 Web 请求响应报文
1. 需求描述
在实际的开发中,为了日志审计、调试验证,经常有输出 Web 请求和响应报文的需求。传统的做法可以在 JavaEE 的 Filter 或者 Spring MVC 提供的 Interceptor 中实现。
上述实现方式存在一个问题就是请求报文是流式传递的,如果对当前报文流读取并进行输出,controller层会得不到报文,因此通常采用 Wrapper 的方式对 HttpServletRequest 对象进行包装。
2. Spring Boot 提供的开箱即用配置
Spring Boot 对上述功能提供了开箱即用的功能,只需要做如下两个配置:
- 【Spring|Spring Boot 输出 Web 请求响应报文】配置 web 组的日志级别为 debug
logging.level.web=debug
- 配置输出日志参数
# for servlet spring.mvc.log-request-details=true # properties for reactive # spring.codec.log-request-details=true
如上配置即可实现请求响应报文的输出
推荐阅读
- SpringBoot|SpringCloud微服务实战——搭建企业级开发框架(四十)(使用Spring Security OAuth2实现单点登录(SSO)系统)
- 使用Spring框架构建MVC应用程序(初学者教程)
- 使用Bootstrap加速应用程序开发
- 使用Java和Spring Security的JWT实现REST安全性
- 如何使用Rails助手(Bootstrap轮播演示)
- 找不到模块(无法解析'C: Userstestcounter-appsrc'中的'bootstrap / dist / css / bootstrap.cs(代码片)
- 可以将Google Appengine的管理控制台集成到spring-boot项目中吗()
- 使用gradle bootRun启动时,redirect()无法在Grails中解析@info.app.name @
- SpringMVC配置applicationContext.xml应该导入some-servlet.xml
- Spring|Spring 源码(14)Spring Bean 的创建过程(6)对象的提前暴露