我需要在NodeJS应用程序中验证某些对象。我已经使用了一个很棒的库express-validator,它运行得很完美,但现在我需要验证不同的对象,不仅仅是请求。由于express-validator利用validator
库,而该库不支持除字符串类型以外的其他类型,因此我需要找到其他解决方案。
我发现了不同的变体,例如Jsonschema、Ajv等。
它们提供了很多功能,但我需要能够设置错误消息,然后只需捕获异常或从返回对象中解析它。
var schema = {
"id": "/SimplePerson",
"type": "object",
"properties": {
"name": {"type": "string", "error": "A name should be provided"},
"address": {"$ref": "/SimpleAddress"},
"votes": {"type": "integer", "minimum": 1}
}
};
所以我可以为每个属性设置错误消息。
有没有现有的解决方案来实现这个功能?
可能的解决方案
我找到了一个很棒的库JSEN它提供了必要的功能。