客户端验证和服务器端验证

时间:2012-10-01 05:52:20

标签: asp.net validation

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

6 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

每次验证回发都不是很好,所以你需要将客户端验证放到验证强制字段,这样你就应该进行客户端验证

关于服务器端验证,如果浏览器javascript被禁用,您无法在客户端完全兼容,最好在服务器端进行验证。

答案 2 :(得分:1)

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

使用服务器端呈现的更新是许多开发人员开始走向深渊的地方。他们实际上认为页面刷新

答案 3 :(得分:1)

对于具有慢/受限制/有限互联网连接的用户来说,避免对服务器的不必要请求(例如,请求提交包含无效数据的表单,最终将被服务器拒绝)是很重要的。等待响应的时间可能会成为用户离开您的网页,然后将您的网站与朋友和亲戚,甚至与任何人谈论不好的原因。

我们总是希望让所有用户满意,不要我们(即使有时我们觉得他们是敌人)

答案 4 :(得分:1)

出于多种原因,需要客户端和服务器端。我写的几点可以解释为什么有必要

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

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

答案 5 :(得分:0)

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