gpt4 book ai didi

validation - JSF 验证是客户端还是服务器端?

转载 作者:行者123 更新时间:2023-12-02 23:49:51 24 4
gpt4 key购买 nike

我实现了我的验证逻辑如下:

        <h:inputText id="title" value="#{...}" 
required="true" requiredMessage="...some..text..."
validatorMessage="...some..other..text..." >
<f:validateLength minimum="10" maximum="50"/>
</h:inputText>

我阅读了很多有关客户端和服务器端验证以及它们的优点和缺点的文章。但我不知道上面的代码是做什么的。

有人可以解释一下吗:-)

干杯

最佳答案

在客户端验证中,客户端(网络浏览器)在客户端语言的帮助下验证输入,例如JavaScript。在服务器端验证中,服务器(网络服务器)在服务器端语言的帮助下验证输入,例如Java。

您永远不应该进行客户端验证,因为结果是最终用户可控的(因此也可破解/欺骗)。通常,您希望使用客户端验证,因为它可以更快地提供反馈。最终用户不需要等待表单提交完成,也不需要面对“内容闪现”(页面空白,然后重新显示新内容)。您希望使用服务器端验证来确保提交数据的完整性。最终用户无法控制服务器端验证的结果。

对于 JSF,通过内置 required="true" 属性和标准/自定义验证器进行的验证始终在服务器端。从 JSF 2.0 开始,可以使用内置的 ajaxical 功能提交表单(从而也验证表单)。这结合了两个世界的优点:无需内容闪现的即时反馈以及服务器端验证的稳健性/完整性。

另请参阅:

关于validation - JSF 验证是客户端还是服务器端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4013410/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com