如何将浏览器中的url作为parameter passing给节点js中的后端?

我正在使用MEAN堆栈。 我正在发送用户ID作为一个url。

<div> <% users.forEach( function( user ){ %> <li><a href=""><%= user.username %></a></li> <li><a href="updateEmployee/<%= user._id %>"><%= user.id %></a></li> <% }); %> </div> 

我想获取这个用户ID作为参数在路由中,并查询具有该ID的用户的详细信息。

我试图如下

 router.get('/updateEmployee/:ID', function (req, res) { User.findOne({_id: req.ID}, function ( err, users, count ){ res.render( 'viewUser', { users : users }); }); 

});

我如何显示在ejs

  <li><a href="/AdminDatabase/viewUser"><%= users.username %></a></li> <li><a href="/AdminDatabase/viewUser"><%= users.id %></a></li> 

我提到了https://scotch.io/tutorials/use-expressjs-to-get-url-and-post-parameters来编写这段代码。

但是我得到一个错误,说不能读取属性“用户名”为空

我是否以正确的方式做这件事。 如果是的我的错误是什么? 或者我怎么能用其他方法做到这一点?

而不是使用_id:req.ID你应该在你的Mongoose findOne函数中使用_id:req.params.ID