背景:项目中需要对请求体做校验,因为HttpServletRequest不能多次读取inputStream,因此需要对它进行包装,Spring提供请求包装器HttpServletRequesWrapper可以处理这类问题。
- 自定义请求包装器
使用成员变量存储请求体的内容
然后覆写getInputStream()方法,每次从成员变量中重新构造新的输入流
- 自定义过滤器,替换请求
替换HttpServletRequest类型的请求,使用包装器包装
- 在拦截器中读取请求体
背景:项目中需要对请求体做校验,因为HttpServletRequest不能多次读取inputStream,因此需要对它进行包装,Spring提供请求包装器HttpServletRequesWrapper可以处理这类问题。
使用成员变量存储请求体的内容
然后覆写getInputStream()方法,每次从成员变量中重新构造新的输入流
替换HttpServletRequest类型的请求,使用包装器包装