我以前在laravel中工作,而laravel的内置库对于处理各种错误非常有效。节点中的任何库是否也可以使用适当的代码结构来处理大多数错误- 我不喜欢下面的代码结构-
check('price').not().isEmpty().withMessage('must not empty').isInt().withMessage("Must be a Integer")
答案 0 :(得分:1)
答案 1 :(得分:1)
我建议您使用nestjs,这会使服务器更具可读性和灵活性,您可以使用内置的验证
答案 2 :(得分:1)
我认为我已经多次使用期望npm库,并且发现它更易于使用。有许多内置函数使您的工作变得容易。 https://jestjs.io/docs/en/expect.html https://www.npmjs.com/package/expect
第二,如果您正在将它用于数据库操作,则mongoose将提供您想要在插入数据之前使用的各种验证。在下面查看: https://mongoosejs.com/docs/validation.html
答案 3 :(得分:0)
最适合您的解决方案是“摇摇欲坠”。如果使用swagger编写API,则根本不需要编写任何验证逻辑。大张旗鼓,您可以在配置文件中定义验证。 Swagger将自动检查传入的请求,如果不是有效请求,则它将拒绝该请求并向客户端发送错误的请求响应。这是最好的文章-https://scotch.io/tutorials/speed-up-your-restful-api-development-in-node-js-with-swagger
答案 4 :(得分:0)
我喜欢指示性-https://indicative.adonisjs.com/
它使用声明性验证,因此避免了示例中的链接。
const { validateAll } = require('indicative');
const validations = {
title: 'required|min:1|max:100'
}
validateAll(req.body, validations)
.then(() => {
// valid
})
.catch(errors => {
res.json(errors);
})