node.js - 如何在node js中获取浏览器中的url作为参数传给后端?

标签 node.js express mongoose

我正在使用 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 的用户的详细信息。

I tried this as following

router.get('/updateEmployee/:ID', function (req, res) {

User.findOne({_id: req.ID}, function ( err, users, count ){

  res.render( 'viewUser', {
    users : users
  });
}); 

});

How I display in 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编写这段代码。

但我收到一条错误消息:无法读取 null 的属性“用户名”

我这样做的方式正确吗?如果是的话我的错误是什么?或者我怎样才能用其他方法做到这一点?

最佳答案

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

关于node.js - 如何在node js中获取浏览器中的url作为参数传给后端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41488683/

相关文章:

node.js - 使用 Mongoose 缓解 MongoDB 注入(inject)攻击

node.js - 创建外部模块时 typescript 类型不匹配

javascript - 如何从 Unirest PUT 请求中返回一个 Promise

javascript - ExpressJS 中最好的 session 存储 - NodeJS

node.js - 在快速 route 使用 socket.io

node.js - 如何将多个 Mongoose 查询合并为一个

node.js - 什么是好的 node.js/mongoose 表单生成器?

javascript - 如何从 mithril 调用 app.js 中的代码

node.js - 当数据库再次可访问时,Mongoose 连接未恢复

mongodb - Mongoose 是否只支持数组中的嵌入文档?