0
所以基本上我想我删除API连接到我的routes.js。我有我的插入,更新,查询以及登录API,这一切运作良好,除了当我把我删除API它与这个错误出现。我试图运行我删除API,但不断收到route.post需要回调函数,但得到的对象不确定,而不是
错误:Route.post()需要回调函数,但在得到了[对象未定义] 路线(匿名函数)作为后](C:\用户\ tester01_2 \ myproject的\ node_modules \表达\ lib中\路由器\ route.js:202: 15)
Routes.js
var express = require('express');
var dbInsert = require('./dbInsert');
var dbQuery = require('./dbQuery');
var dbUpdate = require('./dbUpdate');
var router = express.Router();
var account = require('./account');
var dbRemove = require('./dbRemove');
//var dbImport = require('./dbImport');
router.route('/insertRecord').post(dbInsert.postCollection);
//router.route('/importrecords').post(dbImport.postCollection);
router.route('/updateRecord').post(dbUpdate.postCollection);
router.route('/queryRecord').post(dbQuery.postCollection);
router.route('/login').post(account.postCollection);
router.route('/deleteRecord').post(dbRemove.postCollection);
module.exports = router;
dbRemove.js
var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://localhost:27017/myproject';
var deleteRecord = function(db, req, callback){
db.collection('documents').updateMany({ "SAM ID" : req.body.samId}, {
$set: {
"Active Status" : "0"
}
}, function(err,results){
if(err) return callback(err);
console.log('Done');
console.log(results);
var cursor = db.collection('documents').find({
"SAM ID" : req.body.samId
}).toArray(function(err,doc){
if(err)
return callback(err);
else {
console.log('Succesfully deleted');
console.log(doc);
return callback(null, JSON.stringify(doc));
}
});
}
);
};
module.exports = {
postcollection : function(req, res){
var samId = req.body.samId;
MongoClient.connect(url, function(err, db) {
if(err){
res.send(err);
res.end();
}
deleteRecord(db, req, function(err, doc){
if(err){
res.send(err);
} else{
setTimeout(function(){
res.send(doc);
res.end();
}, 2000);
}
db.close();
});
});
}
}
似乎不是我能到什么地方出了问题的回调函数,它返回一个未定义的对象,因为我使用了相同的格式,我的其他的API。任何帮助表示感谢,谢谢!
Omg非常感谢很多人!我没有看到我在代码中犯的小错误。 –