【问题标题】:Client side validation and server side validation客户端验证和服务器端验证
【发布时间】:2012-10-01 05:52:19
【问题描述】:

为什么我们需要客户端和服务器端验证?我已经读过,出于安全原因,两者都是必需的。所以如果可以绕过客户端验证,那么为什么不只使用服务器端。使用客户端有什么用..

【问题讨论】:

    标签: asp.net validation


    【解决方案1】:

    对于互联网连接速度较慢/受限/受限的用户来说,避免向服务器发出不必要的请求非常重要(例如,请求提交包含无效数据的表单,最终会被服务器拒绝)。等待响应的时间可能会成为用户离开您的网页的理由,然后向亲朋好友甚至任何人谈论您的网站的坏话。

    我们总是想让所有用户都开心,不是吗(尽管有时我们觉得他们是敌人)

    【讨论】:

      【解决方案2】:

      客户端验证可帮助用户更正错误,而无需包含所有错误消息的完整回发。它提高了效率,但它只是一种方便,显然可以绕过。

      【讨论】:

      • thnx..thats 帮助我理解客户端验证..我更简单的问题..使用 javascript 完成的所有验证都是客户端吗?
      【解决方案3】:

      每次验证都回发不是很好的做法,因此您需要将客户端验证用于验证强制性字段,因此您也应该进行客户端验证

      关于服务器端验证,如果浏览器禁用了javascript,你不能真正在客户端进行验证,最好在服务器端进行验证。

      【讨论】:

        【解决方案4】:

        通过客户端呈现,您的初始请求会加载页面布局、CSS 和 JavaScript。除了不包括部分或全部内容外,这都很常见。相反,JavaScript 发出另一个请求,获取响应(可能是 JSON),并生成适当的 HTML(可能使用模板库)。对于页面的后续更新,客户端呈现方法重复它用来获取的步骤最初的内容。即,JavaScript 用于获取一些 JSON 数据,模板用于创建 HTML。

        使用服务器端渲染的更新是许多开发人员开始深入研究的地方。他们实际上认为页面刷新

        【讨论】:

          【解决方案5】:

          出于多种原因,需要客户端和服务器端。我正在写几点来解释为什么它是必要的

          • 对于每一次验证,都会有一个请求从 Web 浏览器发送到 Web 服务器。因此,检查每个控件以进行验证对服务器来说是不必要的开销。假设有 1,00,000 人向服务器发送相同的请求。对于每个请求和响应,都需要一些时间(可能以纳秒为单位),这确实是不必要的。所以建议使用客户端验证。
          • 出于安全原因,我们必须使用服务器端验证。作为程序员,它有责任阻止不良数据进入我们的应用程序。假设在浏览器中有人有意或无意地禁用 JavaScript 并尝试插入数据。如果不存在服务器端验证,那么我们的应用程序可能会出现不良数据。数据可能是一些错误信息,也可能是一个自我执行的程序,这对我们的应用程序确实有害。

          因此建议同时使用客户端和服务器端验证以获得更好的标准应用程序。

          【讨论】:

            【解决方案6】:

            您不需要客户端,但如果不需要回发,它对用户来说会更方便。如果您不关心用户体验,您可以将所有验证器设置为仅服务器端,并且您的数据和操作将受到保护。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2016-10-16
              • 1970-01-01
              • 2012-01-23
              • 1970-01-01
              • 2013-10-11
              • 2020-09-08
              • 1970-01-01
              • 2017-05-03
              相关资源
              最近更新 更多