我有一个奇怪的情况...
我有一个 Express.js、Node.js 和 Mongoose 网络应用程序。
其中一条路由有一个调用 response.send(...) 的 mongoose 回调。但是,由于回调之后没有其他内容,我怀疑它会自动转到 next() 路由。
前任:
//getItem
app.get('/api/ItemOne', isUserValid, routes.getItem);
//getAnotherItem
app.get('/api/getAnotherItem', isUserValid, routes.getAnotherItem);
//Routes
exports.getItem = function (req, res) {
//console.log ('In getItem');
getItem .findOne({ some_id : some_id}, function(err, getItem ){
//console.log ('In getItem callback');
res.send({
itemName : getItem .itemName,
itemValue : getItem .itemValue;
});
})
});
exports.getAnotherItem = function (req, res) {
//console.log ('In getAnotherItem');
getAnotherItem.findOne({ some_id : some_id}, function(err, getAnotherItemRet){
//console.log ('In getAnotherItem Callback');
res.send({
itemName : getAnotherItemRet.itemName,
itemValue : getAnotherItemRet.itemValue;
});
})
});
我在控制台上收到以下消息序列...
In getItem
In getAnotherItem
In getItem callback
In getAnotherItem callback
我假设因为路线没有完成,它会自动调用 next() 。
Q:如何防止第二条路由被自动调用。