一尘不染

验证服务器端或客户端或两者的JSP和HTML表单?

jsp

我知道我可以使用Google“
HTML表单验证”,并且可以获得十亿个教程。我知道我可以使用简单的JavaScript来验证表单输入,但是有人告诉我这不一定是有效的方法。我还听说,验证客户端和服务器端代码都是最佳实践。好!那么,除了在两者上编写代码外,这还意味着什么?这是否意味着我对JavaScript进行了某些操作,而对Servlet进行了其他操作,还是对这两者都编写了相同的验证方法?

我真正的问题是,有人可以给我深刻的见解和指导,如何验证我的HTML表单。我正在使用JSP和Servlet,并且需要进行大量的表单验证。

我已经用Java中的正则表达式进行了小规模的表单验证,但想在编写更多代码之前弄清楚Im是否在正确的轨道上。

请只提供有成效的答案,如果我想对自己的经验不足给予负面反馈,那我应该去Reddit了。

谢谢!


阅读 221

收藏
2020-06-08

共1个答案

一尘不染

  • 需要服务器端验证,因为您不能依赖客户端验证。用户可以禁用,绕过或更改它。
  • 客户端验证很方便,因为它已经负担了服务器的一些负担,并且在用户必须等待服务器答复之前会提醒用户常见的错误。

没有客户端的服务器端是可以的,没有服务器端的客户端是不能的。

如何在服务器端进行验证完全取决于您。现有的库可以为您提供帮助,但是正则表达式也可以。阅读有关为何需要进行验证的内容,以确保您不会忘记检查可能的攻击。

客户端验证也是如此。JQuery Validate模块相当不错,但是您可以编写自己的,没问题。

2020-06-08