JSON REST API:限制字段的可能值

时间:2019-06-03 10:32:43

标签: java json rest spring-boot

在我的REST API中,我有一个变量,该变量只能具有三个值“ E”,“ U”或null。
如果有其他值传入,我想通过验证异常或类似方法。
我可以使用json注释或其他方式来做任何事情吗?

下面是一个示例:

{
   "name": "dave",
   "Status": "E" ,   --this can have values only "E" or "U"
}

1 个答案:

答案 0 :(得分:1)

解决方案1:检查javax.validation to validate list of values?

解决方案2:编写自定义验证服务,将您允许的值放在enum类中,并检查请求中的值是否正确

这可以通过在控制器中调用服务或通过创建自定义Bean验证批注来完成-一些详细信息可以在这里找到:https://docs.jboss.org/hibernate/validator/5.1/reference/en-US/html/validator-customconstraints.html#validator-customconstraints-errormessage

//编辑解决方案2,也包含在解决方案1中