springboot Post 请求拦截Body参数
应用场景
- 想捕获请求发过来的所有参数(包含也许 接收类 不包含的字段)
- 想查看
Feign
远程接口 进行的序列化是否如愿简单问一句,你知道
Feign
接口参数类如果包含一个域 是Class
类型的话,序列化的结果是啥吗?还有如果 Feign 如果传递时间Date
是否会有问题呢?
注意事项
- 记得body里面的参数是储存在 输入流 里的,如果你的拦截器读取了输入流,那么这个输入流就不会再有参数了,即到达
Controller
的参数为空的
代码
拦截器
@Component
public class AuthSecurityInterceptor extends HandlerInterceptorAdapter {
private Logger logger = LoggerFactory.getLogger(AuthSecurityInterceptor.class);
@Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
String body = getBody(httpServletRequest);
System.out.println(body);
return true;// true 则继续执行
}