有关数据验证的原则

今天下午和小伙伴们开会想到的,在会上也和伙伴们简单沟通一下。在这里详细和大家分享一下对于这个话题的认知。如果要简单概括一下我的想法,那就是:对于数据验证而言,前端验证很有必要,但后端验证必须要存在。


什么是数据验证


数据验证其实就是数据的合法性校验,例如:用户填写的用户名或者地址是不是正确,格式是否正确等等。


为什么要进行数据校验。


基本可以开过为以下几点需求:


1,约束用户输入的内容

2,获取真实的用户信息

3,人性化的验证,提升用户体验

4,对自己系统的保护


前端验证和后端验证的区别


前端验证:它可以为用户提供快速反馈,做到快速响应,使用户能够及时察觉所填写数据的不合法性。基本上用JS脚本代码实现,不需要把数据提交到远程服务器。比如,鼠标移上去会有提示效果,鼠标离开,就会马上告诉你数据是否合法等等。

后端验证:不管在前端输入什么,确保前端端送往服务器最后处理的所有数据都是有效的,避免出现服务端漏洞或者不应该的异常。例如,正常的流程是用户需要验证身份之后才能有某些操作,但是通过 API 调用的时候,不需要认证也能直接执行相关操作,执行认证之后的各种权限。


数据验证的原则:


1.前端验证可以不完备,但后端验证必须要稳固


两点理由:

(1)可以通过某些工具绕过前端验证,后端验证是保证数据有效性的防线。

(2)前端验证有局限性。例如身份信息或者征信信息,需要调用第三方API,通过后端进行验证。

2. 前端验证同样很重要,可以优化用户的体验


前端验证不用提交数据,可以快速给出相应提示,提升用户体验,降低服务端的调用次数,减小压力。


一点总结


前端验证给用户带来方便,但是它不能保证安全性,可以被轻易绕过。因此,对于一个安全的数据验证方案,后端的验证是必须的,在每一个API调用时,必须考虑到这个要求。


扫描二维码或手动搜索微信公众号【架构栈】: ForestNotes

欢迎转载,带上以下二维码即可



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值