ajax post to node.js express应用?
-
11-10-2019 - |
题
我正在尝试在使用AJAX插入数据库之前进行身份验证
$('#button').click(function () {
$.post('/db/', {
stuff: { "foo" : "bar"}
}, callback, "json");
});
这是我的node.js代码:
server.get('/', function(req,res){
console.log(res);
res.render('index.ejs', {
locals : {
header: '#Header#'
,footer: '#Footer#'
,title : 'Page Title'
,description: 'Page Description'
,author: 'Your Name'
,analyticssiteid: 'XXXXXXX'
}
});
});
^^此部分正常。它来自一个样板,我可以去Localhost并查看首页。
下一部分应该是蒙哥插入发生的地方。这给了我404。
server.on('/db/', function(req,res){
console.log(req);
console.log(res);
var db = new mongo.Db( 'dbname' , new mongo.Server( 'localhost', 20003, {}), {});
db.open(function (err) {
db.collection('testCollection', function (err, collection) {
collection.insert(res.stuff);
});
});
});
我要做的是插入对象 stuff
进入测试收获。
现在,我在 /db /上获得404
我敢肯定这是非常错误的。我认为我不应该使用server.on,server.get也不起作用。请建议,谢谢。
其他提示
由于您期望发表帖子,因此您的 / DB /处理程序应在 server.post
方法。您将获得404,因为服务器没有为POST和 /DB /组合定义的路由。
您还应该对数据库连接进行身份验证,并且不应在每个请求上重新连接到DB
var db = new mongo.Db( 'dbname' , new mongo.Server( 'localhost', 20003, {}), {});
db.authenticate(user, password, function({ // callback }));
server.post('/db/', function(req,res){
db.open(function (err) {
db.collection('testCollection', function (err, collection) {
collection.insert(. . .);
});
});
});
不隶属于 StackOverflow