我来自 Spring boot(带有 Jersey)来制作 REST API,如果我想要某个字段中的某些值有任何约束,比如有一些最大值或在 javax.validation 库中不为空,我可以轻松处理。import javax.validation.Valid;import javax.validation.constraints.NotNull;...@PUT@Produces(MediaType.APPLICATION_JSON)public Response gestionarVenta(@Valid @NotNull(message = CONSTRAINT_BODY_NOT_NULL) final ProductoCompradoDTO productoCompradoDTO) { ...}但是,我现在正在查看 Google Cloud Endpoints,并尝试使用同一个库,但它只是忽略它并继续执行该方法。import javax.validation.Valid;import javax.validation.constraints.NotNull;@Api(name = "echo", version = "v1", namespace = @ApiNamespace(ownerDomain = "echo.example.com", ownerName = "echo.example.com", packagePath = "")// ...)public class MyApi { @ApiMethod(name = "echo") public Message echo(@Valid @NotNull(message = "cant be null") Message message, @Named("n") @Nullable Integer n) { ... }}我正在发送一个空尸体。为什么它会忽略它?是否有某种方法或库可以对 Google Cloud Endpoints 上的字段值施加约束?谢谢!
1 回答
慕容708150
TA贡献1831条经验 获得超4个赞
对 REST API 调用执行由 javax.validation 注解表示的检查是 Spring Boot 框架中实现的一项功能。
截至 2019 年 10 月,Cloud Endpoints Frameworks for Java 未实现 javax.validation 检查。此外,它不支持等效功能。
添加回答
举报
0/150
提交
取消