SpringBoot:如何使用AOP拦截参数类型为JSON的请求

入参格式为JSON而非普通字符串,形如:

    {
        "REQUEST": {
            "page": "1",
            "rows":"20"
        }
    }

在普通Controller中通过@RequestBody String REQUEST即可解析该JSON入参,但在自定义的切面类 RequestInterceptor 中如何获取这样的入参呢?因为入参为JSON字符串,无法通过request.getParameter()获取

@Aspect
@Component
public class RequestInterceptor {
    
    @Autowired
    private HttpServletRequest request;    

    @Pointcut("execution(* com.api.controller..*.*(..))")
    public void point() {
    }

    @Before(value = "point()")
    public void doBefore(JoinPoint joinPoint) throws Throwable {
        // 获取入参进行初始化
    }
    
}
阅读 6.3k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题