我使用 express.js 创建一个 node.js REST 服务器,作为其中的一部分,我还创建了一个简单的会话系统。我有 3 个模块:
- 应用程序.js
- highscoreMan.js
- 用户会话.js
app.js urlhttp://localhost/api/highscores
现在使用给定参数调用 userSession:
//Get all highscores
app.get('/api/highscores', function (req, res) {
userSession.checkValidity(req.query['username'], req.query['sessionid'], highscoreMan.getAll(req, res));
});
但是,在 checkValidity 中,我传递的函数被自动调用:
function checkValidity(username, sessionId, callback) {
userSession.findOne({ userid: username, sessionid: sessionId }, function (err, result) {
if (err) {
console.log(err);
}
if(result) {
callback;
}
});
}
我只想运行正在传递的函数,因为我从数据库中获得了正确的结果(稍后将针对会话日期等添加其他检查)。我该怎么做?