首页 > 解决方案 > 如何限制rest api方法的列表参数中的值

问题描述

@RestController
@RequestMapping("/elcy/api")
public class DummyRestService {  

    @RequestMapping(value = "/hello", method = RequestMethod.GET)
    public String sayHello(@RequestParam List<String> statuses) {
        return "Hello RestService;
    }
}

我想限制列表参数状态,它只能具有“A”、“B”或“C”值,并且不允许值“D”或列表中的其他字符串值。

有什么办法可以做到这一点?

标签: javarest

解决方案


将参数状态的类型从字符串列表更改为状态列表,其中状态为 Java 枚举类型。

枚举状态 {A,B,C}

如果将 A、B 或 C 以外的值传递给 restful 方法,则会生成错误请求 400 错误。


推荐阅读