问题标签 [validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
13822 浏览

java - 基于注解的 Spring bean 验证

我正在研究一种基于注释的方法来使用spring modules验证 Spring beans 。在本教程中,使用以下 bean(省略了 getter 和 setter)作为示例:

如果不遵守特定验证规则,则使用的错误消息应遵循以下格式:

上面显示的类的示例包括:

消息键包含类名的事实带来了几个问题:

  1. 如果类被重命名,消息键也需要改变
  2. 如果我有另一个类(例如 Person),其电子邮件属性与 User.email 验证相同,我需要复制消息,例如

    Person.email[not.blank]=请输入您的电子邮件地址。
    Person.email[email]=请输入有效的电子邮件地址。
    Person.email[length]=请输入不超过 {2} 个字符。

事实上,文档声称可以为特定规则(例如@Email)配置默认消息,如下所示:

如果找不到规则的特定于 bean 的消息,则应使用此默认消息。但是,我的经验是,这根本行不通。

避免重复消息的另一种机制是将错误消息的键传递给规则注释。例如,假设我为 @Email 规则定义了以下默认错误消息

如果我像这样注释相关属性,则应使用此消息:

但是我一次又一次地尝试了这个,它似乎不起作用。在使用此验证框架时,有没有人找到避免重复错误消息的方法?

0 投票
6 回答
2349 浏览

javascript - 当您使用 javascript 填充需要子元素的元素时,如何编写有效的 XHTML 1.0 Strict 代码?

我正在通过 W3C 的验证器运行我的网站,试图让它验证为 XHTML 1.0 Strict,但我遇到了一个特别棘手的(至少在我的经验中)验证错误。我在网站中包含来自各种服务的某些徽章,这些服务提供自己的 API 和代码以包含在外部网站上。这些徽章(大部分情况下)使用 javascript 来填充您在需要子元素的标记中插入的元素。这意味着最终会生成完全有效的标记,但对于验证器来说,它所看到的只是一个不完整的父子标签,然后它会抛出一个错误。

作为一个警告,我知道我可以向他们的徽章不验证的服务投诉。没有这个,我假设有人已经验证了他们的代码,同时包含了这样的徽章,这就是我感兴趣的。诸如“向 Flickr 投诉他们的徽章”之类的答案对我没有多大帮助。

另一个警告:我希望标记尽可能保持语义。IE 添加一个空的 li 标记或 tr-td 对以使其验证将是一个不受欢迎的解决方案,即使它可能是必要的。如果这是唯一可以验证的方法,那么好吧,但请把答案倾向于语义标记。

举个例子:

注意包装 javascript 的 ul 标签。这最终会通过脚本用 lis 填充,但对于验证器来说,它只看到未填充的 ul。

提前致谢!

0 投票
5 回答
9569 浏览

javascript - ASP.NET MVC 客户端验证

我一直在使用 ASP.NET MVC,但我希望改进的领域之一是客户端验证。

我知道最新版本(Preview 5)有很多新的验证功能,但它们似乎都是在页面发布之后。

我看过Steve Sanderson的一篇有趣的文章……使用 Live Validation、Castle.Components.Validator.dll 和他制作的 Validator 框架。

我在我的项目中使用过它,但我希望它能够集成到官方的 ASP.NET MVC 版本中。我绝对认为业务规则应该驻留在模型或控制器而不是视图中。

你们中有人用过类似的方法吗?

你知道这样的东西被添加到官方 ASP.NET MVC 版本中了吗?

0 投票
4 回答
3157 浏览

nhibernate - 验证块与 Nhibernate.Validator

我正在寻找验证框架,虽然我已经在使用 NHibernate,但我正在考虑使用 contrib 项目中的 NHibernate.validator,但是我也查看了 MS Validation Block,它似乎很强大,但我还没有深入了解每个框架,所以我想知道有没有人涉足这两个框架,体验如何?

0 投票
5 回答
1150 浏览

java - 您使用什么来验证 XML 模式?

当我想根据服务器端 Java 中的模式验证 XML 文档时,我使用内置的 JRE Xerces 实现和 javax.xml.validation.Schema。它工作正常,但是当验证失败时,Xerces 会给出非常接近无用的错误消息,例如:

这些可能需要很长时间才能诊断和追踪到 XML 文档中验证失败的特定部分,这都是因为错误消息很差。

所以我的问题是,您是否使用另一种方法来验证 XML 对 Schema,从而在验证失败时提供更有用的输出?

请不要说这是服务器端 Java,所以请不要说“使用 XML Spy”或类似的词。

0 投票
19 回答
19743 浏览

regex - 电子邮件地址的正则表达式识别很难吗?

我最近在某处读到,写一个正则表达式来匹配一个电子邮件地址,考虑到标准的所有变化和可能性是非常困难的,而且比最初假设的要复杂得多。

这是为什么?

是否有任何已知且经过验证的正则表达式实际上可以完全做到这一点?

使用正则表达式匹配电子邮件地址有哪些好的替代方法?

0 投票
13 回答
227187 浏览

javascript - 邮政编码(美国邮政编码)验证

我以为人们会一起做一些小的代码项目,但我没有看到他们,所以这里有一个简单的:

验证有效美国邮政编码的代码。我知道那里有邮政编码数据库,但仍有一些用途,例如网页、快速验证,以及邮政编码不断发布的事实,因此您可能想要使用弱验证。

我在我的 wiki/blog 的一个附带项目中写了一些关于邮政编码的内容:

https://benc.fogbugz.com/default.asp?W24

还有一种新的、奇怪的邮政编码。

https://benc.fogbugz.com/default.asp?W42

我可以编写 javascript 代码,但是看看我们可以在这里获得多少种语言会很有趣。

0 投票
13 回答
144641 浏览

javascript - JavaScript:客户端与服务器端验证

客户端或服务器端验证哪个更好?

在我们的情况下,我们正在使用

  • jQuery 和 MVC。
  • 在我们的视图和控制器之间传递的 JSON 数据。

我所做的很多验证都是在用户输入数据时验证数据。例如,我使用该keypress事件来阻止文本框中的字母,设置最大字符数以及一个数字在一个范围内。

我想更好的问题是,在客户端进行服务器端验证有什么好处吗?


真棒回答大家。我们拥有的网站是受密码保护的,并且用户群很小(<50)。如果他们没有运行 JavaScript,我们将发送 ninjas。但是,如果我们要为每个人设计一个网站,我会同意双方都进行验证。

0 投票
33 回答
237518 浏览

regex - 用于匹配英国邮政编码的正则表达式

我正在使用一个正则表达式,它将仅在输入字符串中验证完整的复杂英国邮政编码。所有不常见的邮政编码形式都必须像往常一样被覆盖。例如:

火柴

  • CW3 9SS
  • SE5 0EG
  • SE50EG
  • se5 0eg
  • WC2H 7LT

没有匹配

  • aWC2H 7LT
  • WC2H 7LTa
  • WC2H

我该如何解决这个问题?

0 投票
3 回答
986 浏览

validation - HTTP 响应拆分

我正在尝试处理这种可能的漏洞,并想知道最好的方法是什么?我应该使用 apache 的 common-validator 并创建一个已知允许符号列表并使用它吗?