【发布时间】:2018-10-14 05:59:49
【问题描述】:
我正在尝试验证 JSON(由客户端作为请求正文传递),然后再将其转换为 Controller 方法中的模型。
如果验证通过则不返回任何内容,让流程照原样继续(spring boot 将 JSON 转换为标记为 @RequestBody 的模型)。验证失败时抛出错误 (everit-org/json-schema)。
我尝试了两种方式:
-
实现
HandlerMethodArgumentResolver,但resolveArgument()不提供请求正文详细信息,因为它已被读取并存储在ContentCachingRequestWrapper中。注意:
ContentCachingRequestWrapper中的inputStream没有任何请求正文详细信息。 -
使用spring
Interceptor。但这并不能帮助我找到请求中传递的请求正文类型。由于每个请求的 JSON 架构都不同。
我可以尝试其他任何方法吗?
【问题讨论】:
标签: spring-boot httprequest json-schema-validator