Ale*_*der 4 node.js express express-validator
我试图使用快速验证器验证输入是某个范围内的整数或浮点数。我试过了 ...
check(
'rating',
'Rating must be a number between 0 and 5'
).isNumeric({ min: 0, max: 5 }),
Run Code Online (Sandbox Code Playgroud)
...但最小值和最大值实际上不起作用。我尝试输入大于 5 的数字,但它们不会引发错误。
下面的作品(不允许数字超出最小值和最大值)......
check(
'rating',
'Rating must be a number between 0 and 5'
).isInt({ min: 0, max: 5 })
Run Code Online (Sandbox Code Playgroud)
...但仅适用于整数,不适用于小数,并且输入必须是小数或 0 到 5 之间的整数
有没有办法做到这一点?谢谢
Sha*_*ty 10
isNumber没有 min 和 max ,你可以使用isFloat:
check('rating',
'Rating must be a number between 0 and 5')
.isFloat({min:5,max:5}))
Run Code Online (Sandbox Code Playgroud)
用于 int 检查
body('status', 'status value must be between 0 to 2')
.isInt({ min: 0, max: 2 }),
Run Code Online (Sandbox Code Playgroud)