我有一个UI界面,其中某些字段是根据其他字段的值是否填写而变为必填的。所以我想知道最佳实践是,这种验证需要在服务器端和UI端都进行,还是只在UI端进行即可。
我有一个UI界面,其中某些字段是根据其他字段的值是否填写而变为必填的。所以我想知道最佳实践是,这种验证需要在服务器端和UI端都进行,还是只在UI端进行即可。
客户端和服务器端都应该进行检查。
客户端不应该能够提交不完整的表单。
如果另一个前端开发,比如一个网页,开发人员可能会忘记强制执行这些检查。后端需要能够处理并拒绝无效的表单。
前端验证易于实现,用户可以快速得到响应。您需要这个。
如果您想要在后端持久化或执行一些逻辑,则还应在后端进行验证。
Java/JSF Hibernate 示例(后端):
@NotBlank(message = "{contact.firstName.isEmpty}")
@Size(min = 1, max = 255, message = "{contact.firstName.invalid}")
public String getFirstName() {
return firstName;
}
如果您没有使用任何框架,我建议您在UI上验证此内容。这将提高客户的响应能力。 如果您需要在数据库中获得一致的数据,则还需要在服务器端进行验证。
也许考虑使用像Java Server Faces这样的框架。