如何优雅的进行入参数据校验?
本期的话题非常有意思,下面我就分享下近期刚好和一位同事聊到“关于前后端参数校验”的问题。因为在日常开发过程中,我们都必须对接口的参数校验,前后端都需要做,但是参数校验,前端和后端的要求并不一致。
1.在哪些场景下,你会进行入参数据校验的呢?【前端校验】a.数据类型校验:校验用户输入的数据是否符合预期的数据类型,例如字符串、数字、日期等。b.数据长度校验:校验用户输入的数据长度是否符合预期,例如文本框的长度限制、邮箱格式的长度限制等。c.数据格式校验:校验用户输入的数据格式是否符合预期,例如邮箱格式、电话号码格式等。d.数据唯一性校验:校验用户输入的数据是否唯一,例如用户名、邮箱等。e.数据安全校验:校验用户输入的数据是否安全,例如密码的加密、敏感信息的隐藏等。f.表单验证:校验整个表单的数据是否符合预期,例如必填项是否填写、表单是否提交等。
【后端校验】a.数据类型校验:校验用户提交的数据是否符合预期的数据类型,例如字符串、数字、日期等。b.数据长度校验:校验用户提交的数据长度是否符合预期,例如文本框的长度限制、邮箱格式的长度限制等。c.数据格式校验:校验用户提交的数据格式是否符合预期,例如邮箱格式、电话号码格式等。d.数据唯一性校验:校验用户提交的数据是否唯一,例如用户名、邮箱等。e.数据安全校验:校验用户提交的数据是否安全,例如密码的加密、敏感信息的隐藏等。f数据约束校验:校验用户提交的数据是否符合数据库的约束,例如外键约束、唯一约束等。g.业务逻辑校验:校验用户提交的数据是否符合业务逻辑,例如订单金额是否符合规定、库存是否足够等。
2.如何优雅的进行入参数据校验?你有哪些处理方式?前端的数据校验 主要是为了保证用户输入的数据符合预期,提高用户体验,减少错误数据的提交。前端的数据校验可以通过JavaScript等技术实现,但是前端的校验并不是绝对可靠的,因为用户可以通过修改浏览器的控制台或者使用其他工具绕过前端的校验。后端的数据校验 则是为了保证数据的完整性、准确性和安全性。后端的数据校验可以通过代码实现,可以更加严格和全面地校验数据,避免非法数据的提交。后端的数据校验也可以与数据库进行交互,对数据进行约束和验证。
因此,前端和后端的数据校验应该相互配合,前端校验可以提高用户体验,减轻后端的负担,后端校验则可以保证数据的准确性和安全性。前端和后端的校验程度可以根据具体情况进行调整,但是需要保证数据的一致性和准确性。
赞3
踩0