Bootstrap

大聪明教你学Java | SpringBoot 项目里如何在拦截器中获取 @RequestBody 参数

前言

🍊作者简介: 不肯过江东丶,一个来自二线城市的程序员,致力于用“猥琐”办法解决繁琐问题,让复杂的问题变得通俗易懂。
🍊支持作者: 点赞👍、关注💖、留言💌~

最近项目中来了一个新的需求:需要搞一个拦截器,对请求接口时传递过来的参数做一个加密处理。这个需求本身并不难,但是在实现功能的过程中却遇到了一个比较“棘手”的问题…

踩坑之路

问题描述

在拦截器中获取接口参数的时候需要分两种情况:

🍓情况一:接口使用 @RequestParam 接收参数

🍓情况二:接口使用 @RequestBody 接收参数

针对情况一,代码写起来就非常简单了,我们只需要在拦截器中通过request.getParameterMap() 来获得全部 Parameter 参数就可以了;但是当接口使用 @RequestBody 接收参数时,我们在拦截器中使用同样的

;