我是后端开发的新手。我已经编写了API来更新用户信息,其请求体如下 -
{
"id": 26,
"email": "tom.richards@yahoo.com",
"firstName": "Tommy",
"lastName": "Richards",
"photoUrl": null,
"userAddress": [
{
"id": 8,
"type": "home",
"addressLine1": "DP Road",
"addressLine2": "Main Street",
"city": "Los Angel",
"state": "CA",
"country": "USA",
"postalCode":915890
},
{
"id": 25,
"type": "office",
"addressLine1": "Dr Red Road",
"addressLine2": null,
"city": "SA",
"state": "CA",
"country": "USA",
"postalCode":918950
}
]
}
理想情况下应该在前端[网站或电话]或后端[服务器端]或两端验证地址类型[在我的家庭或办公室中]?哪种方法可以验证地址类型?如果我们在后端验证它,这将导致任何性能问题?
注意 - 如果开发人员传递任何字符串,则类似传递字符串的地址类型将在DB中创建。
答案 0 :(得分:1)
后端的好方法可以验证从任何网络请求获得的所有内容,因为您无法判断它是来自您的网站或其他来源(甚至是某些恶意内容)的好请求攻击)。后端必须保护自己并验证它所获得的一切。
除此之外,在某些(如果不是全部)情况下,在前端方面进行一些验证也是一件好事,一个原因是,如果你有一个请求,你知道后端正在进行失败 - 在你做一个昂贵的请求之前先省去麻烦并检查一下
答案 1 :(得分:0)
<强>原因强> 前端验证:在服务器上验证,用户必须等待无效数据的响应。
后端验证:确保入侵者无法改变数据。
验证@database结束:像Mongoose一样提供内置和自定义验证。
根据要求,我们必须在用户个人资料更新之前交叉检查数据。