【发布时间】:2020-05-21 10:54:51
【问题描述】:
客户端是浏览器中的webapp,后端是用Java(Spring Boot)编写的。业务流程如下:从服务器请求实体→用户填写表单→表单发送到后端。表单应在前端和后端进行验证。验证规则取决于实体内部的值。我想避免负责派生验证规则的代码重复。我认为最好的方法是后端添加验证规则以响应请求的实体,以便前端可以使用它们。有没有解决此类问题的通用方法?
【问题讨论】:
-
是的。你可以从这篇文章开始Validating Form Input
-
spring.io/guides/gs/validating-form-input 的问题在于,这种方法会“懒惰地”验证表单:当提交请求发送到后端时。但我需要将规则包含在响应中并由前端使用,以便前端不会发送无效表单。
-
验证规则可能不是避免代码重复的最佳场所。这在财务相关验证规则的情况下非常重要,您希望前端和后端验证规则是分开的。同样,这取决于您的用例。
标签: java spring spring-boot