开发者社区 问答 正文

注册验证用哪些交给前端处理哪些交给后台处理?

问题对人有帮助,内容完整,我也想知道答案0 问题没有实际价值,缺少关键内容,没有改进余地
比如:
1.不读取数据库的有效性验证(是否填写验证、密码长度验证、邮箱有效性验证)
2.取数据库的有效性验证(用户名重复验证)
3.密码重复验证(应该算第一类吧?)
4.其它未考虑到的...

展开
收起
小旋风柴进 2016-03-24 11:21:10 2380 分享 版权
1 条回答
写回答
取消 提交回答
  • 一般在前端需要验证的东西,在后端也必须验证,因为浏览器禁用js后就可以绕过js的验证了。

    前端验证是为了体验更好,减少连接请求等。比如,你所说的密码长度验证、邮箱有效性验证这些,在前端就能验证的东西,没必要提交到后端去验证,让这部分处理交给客户端处理是能缓解服务端压力的(对于高并发的网站,效果很明显)。

    那什么应该放到后端去验证呢?常见的是与数据库操作有关的,比如用户名重复验证、密码重复验证,这些必须查询数据库才知道的东西。为了更好的体验,现在一般都是通过ajax对后端发起请求,不刷新页面的方式进行验证(同时可以节省流量)。除了与数据库操作有关的可能放到后端去验证,还有一些别的情况也可能放到后端验证,比如有个字段的检查需要借助一个算法,不可能把这个算法的实现写到js去。

    总的来说,坚持一个原则,所有验证尽可能放到前端去验证,同时前端验证的东西后端再验证一次。

    2019-07-17 19:12:24
    赞同 展开评论