【发布时间】:2017-02-16 13:16:33
【问题描述】:
我有两个角色,想根据传入数据中的角色字段对传入的发布请求应用不同的数据验证规则,即。如果发布的角色是管理员,则验证输入是否具有名称字段,如果角色是用户,则验证输入是否具有年龄。我在 create 方法的 beforeRemote 钩子中编写了验证代码,例如:
if (role === "admin") {
Members.validatesPresenceOf('name');
next();
} else {
Members.validatesPresenceOf('age');
next();
}
对于第一个请求,如果角色是管理员,则验证工作并捕获输入中不存在名称的情况。但是对于下一个请求,如果角色是用户,仍然会出现名称字段而不是年龄的验证错误。然后,如果我重新启动节点服务器并首先尝试使用用户角色,则会捕获年龄验证,但是对于所有后续请求,无论角色如何,都会检查年龄验证。可能是什么问题呢?如果还有其他方法可以实现这一点,请告诉我。提前致谢!
【问题讨论】:
标签: node.js validation loopbackjs