You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从MongoDB的users集合提取name和email并通过res.json返回?

提取用户name和email并返回的实现方法

场景1:已获取完整用户数据后的处理

如果已经从数据库拿到了题目中给出的完整用户数据集,直接用数组的map方法提取目标字段即可:

// 假设已获取到完整的返回数据
const dbResponse = {"success": true,"users": [{"photo": {"id": "users/m1ul7palf4iqelyfhvyv","secure_url": "https://res.cloudinary.com/dpbdw6lxh/image/upload/v1665251810/users/m1ul7palf4iqelyfhvyv.png"},"_id": "634158087709697bfc50480b","name": "updatetest1","email": "updatetest1@shoppers.com","role": "user","createdAt": "2022-10-08T10:59:20.933Z","__v": 0},{"photo": {"id": "users/ic2bfhlhvenrr6koesyo","secure_url": "https://res.cloudinary.com/dpbdw6lxh/image/upload/v1665301682/users/ic2bfhlhvenrr6koesyo.png"},"_id": "63427cb276374e72e4d13a8b","name": "test1","email": "testuser1@gmail.com","role": "user","createdAt": "2022-10-09T07:48:02.603Z","__v": 0}]};

// 提取每个用户的name和email
const filteredUsers = dbResponse.users.map(user => ({
  name: user.name,
  email: user.email
}));

// 通过res.json返回处理后的结果,可按需包装成指定结构
res.json({
  success: true,
  users: filteredUsers
});

场景2:数据库查询阶段直接指定返回字段(更高效)

没必要让数据库返回所有字段,直接在查询时用**投影(Projection)**指定只返回name和email,减少数据传输量:

Mongoose 写法

// 查询所有用户,仅返回name和email(_id默认会返回,不需要则添加_id: 0)
User.find({}, 'name email')
  .then(users => {
    res.json({
      success: true,
      users: users.map(user => ({ name: user.name, email: user.email }))
    });
  })
  .catch(err => {
    res.json({ success: false, message: err.message });
  });

// 或者用对象形式明确指定投影,排除_id
User.find({}, { name: 1, email: 1, _id: 0 })
  .then(users => res.json({ success: true, users }))
  .catch(err => res.json({ success: false, message: err.message }));

原生MongoDB驱动写法

const db = client.db('你的数据库名称');
const userCollection = db.collection('users');

userCollection.find({}, { projection: { name: 1, email: 1, _id: 0 } })
  .toArray()
  .then(users => {
    res.json({ success: true, users });
  })
  .catch(err => {
    res.json({ success: false, message: err.message });
  });

内容的提问来源于stack exchange,提问作者harman_chahal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 02:55:31