【问题标题】:Is my JavaScript validating enough?我的 JavaScript 验证是否足够?
【发布时间】:2012-11-28 21:14:26
【问题描述】:

我有一个关于验证使用 AJAX 提交的表单中的数据的问题(并不重要)。

我正在使用 jQuery 验证它,通常是三件事:

  • 字段中有数据吗?
  • 数据的长度(和数据的种类)是否正确?
  • 数据是否与正则表达式匹配(没有奇怪的 XSS 字符等)

我的问题:我需要在服务器端重复多少验证?用户可以执行 JS 和/或更改我的 HTML 以将任何危险代码提交到我的后端吗?

【问题讨论】:

    标签: forms validation


    【解决方案1】:

    永远不要依赖 JavaScript 和客户端验证。仅仅是因为用户可以很容易地禁用或绕过您的客户端验证。

    在服务器端验证之前,任何用户输入都应视为无效

    客户端验证应被视为“值得拥有”的功能,以增加应用程序的 UX 价值(它允许用户更快地检测到错误,而无需重新填写表单)。但仅此而已。它不能替代可靠的服务器端验证。

    【讨论】:

    • +1 Javascript 验证是世界上最容易绕过的东西(greasemonkey 脚本、浏览器插件、禁用 javascript、使用非常旧的浏览器、wget 等)
    猜你喜欢
    • 2011-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-06
    • 2018-01-27
    • 2015-09-02
    相关资源
    最近更新 更多