首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >后端服务中的数据验证

后端服务中的数据验证
EN

Stack Overflow用户
提问于 2018-04-02 09:25:44
回答 2查看 232关注 0票数 0

我在spring-boot中为一个android应用程序创建了一个后端代码。

我的问题是,有没有什么规则来区分后端验证和前端验证?

例如,对于用户创建,应该只在前端检查空白字段,但对于单独测试后端服务,在后端有验证是可以的。

如果我们只是在前端进行验证,那么当我们单独测试后端服务时就会出现问题。

EN

回答 2

Stack Overflow用户

发布于 2018-04-02 09:49:45

一般来说,从客户端发送的数据是不可信的。例如,即使客户端验证了一个字段不为空,您也应该假设该字段根本没有经过验证。

你也应该在后端实现类似的验证逻辑。基于JSR-303用Spring实现验证的Here's the starting point

票数 1
EN

Stack Overflow用户

发布于 2018-04-04 06:17:42

在后端进行验证不仅是“可以的”,而且是必需的。正如@hovanessyan提到的,你永远不能信任来自客户端的数据。绝不可能。

根据经验,API必须是防弹的。所有的边缘情况(空安全、类型安全、最小/最大值、自定义验证)都应该被覆盖和测试。没有什么比API响应500更糟糕的了。

许多开发人员注意到在前端和后端之间存在一些验证逻辑重复,这也是像Node.js这样的技术如此流行的原因之一-理论上你可以共享验证。

此外,不要因为不得不重复验证逻辑而灰心丧气。这很乏味,但却是必要的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49608647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文