【发布时间】:2015-09-09 16:02:46
【问题描述】:
所以我是 nodejs 的新手,我有以下函数 Common.validRequest 将在执行以下操作的每个请求上运行:
1) 检查请求 api 路由的数组,即 '/user/login' 在数组中查找该路由 (Common.apiDoc()) 并返回该路由的请求正文应包含在数组中的字段。
{name: 'user', required: true, description: 'Users login ID', minLength: 5, maxLength: 7},
{name: 'password', required: true, description: 'Users login password', minLength: 7, maxLength: 100}
2) 对于数组中的每个字段,如果在字段上将“必需”设置为 true,请检查请求正文中是否包含该字段,如果不是则返回 false。 (false 将返回缺少字段错误)
所以问题是我做错了吗?
Common.validRequest = function (actionUrl, body) {
var fields = Common.apiDoc(actionUrl).fields;
if (!fields) { return true; }
for(field in fields) {
if (fields[field].required) {
if (!body[fields[field].name]) return false;
}
}
return true;
};
// get documentation for specified api action
Common.apiDoc = function (actionUrl) {
for(apiAction in Common.apiMethods) {
if (Common.apiMethods[apiAction].url == actionUrl) {
var doc = Common.apiMethods[apiAction];
return doc;
}
}
};
【问题讨论】: