我应该在API或BL层中验证输入吗?

时间:2019-04-22 12:56:54

标签: node.js validation user-input jsonschema

我有一个具有API,BL和DAL层的node.js应用程序,我想验证用户输入。

目前,我正在BL函数的开头进行验证,因此它可以兼作用户输入验证器和内部应用程序验证器(来自其他类的调用)

我担心这不是一个好习惯,因为对于某些函数(例如,一个接受userId然后将userId发送给其他函数的函数,可能多次验证同一值),一次验证可能会多次进行验证。 / p>

1 个答案:

答案 0 :(得分:0)

使用中间件从请求到路由时,您应该验证数据:

U+0112

如果您愿意,我可以与router .get('/', validators.users.index, actions.users.index) 共享其余的验证代码。