如果条件不起作用,则执行以下操作:
我仍然可以用数字而不是字符串注册。
在此处输入图像描述
req.body.firstName
和req.body.lastName
很可能是以字符串形式出现的,例如:
{
"firstName": "4",
"lastName": "187"
}
所以CCD_ 3仍然将它们视为字符串。如果你真的讨厌数字,你可以使用正则表达式。
const { firstName, lastName } = req.body;
if (firstName.match(/^d*(.d+)?$/) || lastName.match(/^d*(.d+)?$/)) {
return res.status(422).json({
message: 'Name provides letters, not numbers!',
})
}
或者我建议您使用Joi或validate.js这样的验证库,以避免构建可能存在安全漏洞的API。