Javascript 处理验证的最佳实践

Javascript 处理验证的最佳实践,javascript,validation,Javascript,Validation,我有一个UI,其中包含一组字段,其中一个字段根据插入到另一个字段中的值变为必填字段。因此,我只想知道最佳实践是,验证是否需要在服务器端和UI端进行,或者如果我在UI端进行验证,而不是在服务器端进行验证,那么就足够了。应该在客户端和服务器端进行检查 客户不能提交不完整的表格 如果开发了另一个前端,比如说一个网页,开发人员可能会忘记执行检查。然后,后端需要能够处理和拒绝无效表单。我建议您在不使用任何框架的情况下,在UI上对此进行验证。这将提高客户的响应能力。 如果您需要数据库中的一致数据,服务器端的

我有一个UI,其中包含一组字段,其中一个字段根据插入到另一个字段中的值变为必填字段。因此,我只想知道最佳实践是,验证是否需要在服务器端和UI端进行,或者如果我在UI端进行验证,而不是在服务器端进行验证,那么就足够了。

应该在客户端和服务器端进行检查

客户不能提交不完整的表格


如果开发了另一个前端,比如说一个网页,开发人员可能会忘记执行检查。然后,后端需要能够处理和拒绝无效表单。

我建议您在不使用任何框架的情况下,在UI上对此进行验证。这将提高客户的响应能力。 如果您需要数据库中的一致数据,服务器端的验证也是必要的


也许可以考虑使用Java Server Faces之类的框架,验证规则是从不信任输入。假设您正在构建一个web应用程序,您至少应该在第一次访问服务器时进行验证,并快速报告错误。原因是用户的行为出人意料,客户端javascript很容易被破坏。客户端javascript应该被视为方便用户使用。如果您在多个前端(厚客户端、web服务等)公开您的服务,那么您还应该在您的服务中进行验证。

前端验证易于实现,用户可以快速响应其操作。你需要这个

如果您想在后端持久化或执行一些逻辑,您还应该在后端验证它

Java/JSF hibernate示例(后端):

@NotBlank(message = "{contact.firstName.isEmpty}")
@Size(min = 1, max = 255, message = "{contact.firstName.invalid}")
public String getFirstName() {
     return firstName;
}