【问题标题】:When server side validation is required? [duplicate]何时需要服务器端验证? [复制]
【发布时间】:2013-11-11 01:10:15
【问题描述】:

我正在使用 jquery 提交表单,例如,如果用户单击提交图像,它将提交表单。因此,在这种情况下,如果用户在浏览器上禁用 java 脚本,用户将无法提交表单。

那么我需要对这个表单进行服务器端验证吗?因为我知道当有人在浏览器上禁用 javascript 时服务器端验证很有帮助,但是在我的情况下,用户在禁用 javascript 后无法提交表单,所以我为什么需要服务器端验证。

如果我错了,在哪些情况下我需要服务器端验证?

【问题讨论】:

标签: javascript jquery forms validation server-side-validation


【解决方案1】:

因为您的客户端验证可能会被破坏。

例如 - 在网络上,如果您使用 javascript 进行验证, 关闭 javascript 或更改其工作方式非常容易 使用 FireBug 等工具。

事件与其他客户端/服务器方法,数据可能 链接被破坏,“验证”的数据可以在 到服务器的方式(中间人攻击)。

一般来说,“永远不要相信客户”这句格言是您 需要始终在服务器上进行验证。

在这种情况下,您可能会问,为什么要在客户端进行验证?为了 提供即时反馈。

Why do we need server side as well as client side validation for Web applications?

看看这个

【讨论】:

    【解决方案2】:

    无论您的客户端验证如何,我们都必须实施服务器端验证以维护安全性,否则任何人都可以破解您的 URL 并通过 URL 发送数据。因此,进行服务器端验证是非常好的做法

    【讨论】:

    • 但是如果禁用 javascript 它将如何工作?他描述他有这种情况,如果用户在浏览器上禁用 java 脚本,用户将无法提交表单。
    • 你只是不需要按钮来提交表单.....有许多黑客技术。所以服务器端保护是强制性的。
    【解决方案3】:

    我有简单的答案.. 如果用户禁用客户端脚本,则不显示表单/内容..所以用户将强制启用脚本@客户端..

    <html>
    <body>
    <noscript>
      Activate script for better result.. 
      <style>div { display:none; }</style>
    </noscript>
    <div>
    u r form code goes here
    </div>
    </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-21
      • 1970-01-01
      • 1970-01-01
      • 2012-05-28
      • 2016-04-12
      • 2021-01-16
      • 2019-10-21
      • 2011-11-06
      相关资源
      最近更新 更多