【发布时间】:2026-01-25 10:10:01
【问题描述】:
我已经关注下一个教程:http://cwbuecheler.com/web/tutorials/2014/restful-web-app-node-express-mongodb/ 几天后,我完成了所有工作,但更新用户数据库是为了读者自己。
我已经编辑了翡翠模板并为更新链接上的点击事件添加了一些 javascript。 我什至可以从列出的 testuser 中检索用户 ID。用警报对此进行了测试,一切正常。
点击事件的javascript:global.js
function showUser2Edit(event){
event.preventDefault();
var userID = $(this).attr('rel');
// alert (userID);// _id from MongoDB, ok!
// jQuery AJAX call for JSON
$.getJSON( '/users/userdata/' + userID, function( data ) {
// populate edit form
alert (JSON.stringify(data));
}
}
在 users.js(服务器端 node.js)中
/*
* GET userData
*/
router.get('/userdata', function(req, res) {
var db = req.db;
var collection = db.get('users');
collection.find({_id: ?????? },{},function(e,docs){
res.json(docs);
});
});
2 个问题我真的不知道如何解决它们:
Ajax 调用将指向:users/userdata/_id(_id 是一个长字符串,由 MongoDB 自动添加为键)。但是如何将其添加到此路由器功能中?
这个_id必须放在collection.find(....)的where部分,但是如何从url中提取呢?
提前感谢您的帮助!
重复的标记不正确,那个是关于查询参数:?color=red,如何访问变量颜色?,mines 是一个 REST 系统,其中 id 是 url 本身的一部分。
【问题讨论】:
-
这是一个“表达”问题,答案可在"request" 对象的文档中找到。事实上,这是页面上的第一个示例。
-
让我在谷歌上帮你搜索一下.. :) 也是一个副本。
-
那一个是关于一个get参数:?color=red,我怎样才能访问variabe颜色?我的问题是关于 REST 系统,所以没有参数
-
@Blakes:感谢您提供的链接。
标签: javascript node.js express