node.js - 从 API / MongoDB 检索用户集合但排除密码字段?
问题描述
我正在构建一个检索文章的 api。我的数据库中也有用户,并且希望有一个返回用户的端点。/api/users/:userid
. 这将返回以下内容:
{
"articles": [], //array w. references to articles the user has written
"_id": "5b1321321bcda0e3364251d7e4a",
"email": "user@email.com",
"password": "$2a$1231241gi14k41k42bk12bh3k127iP/k1LAqwPdbgF/bXXpRia",
"__v": 0
}
-- 但是,我不确定在 API 中返回(加密的)密码是否是个好主意。我可以以某种方式排除此字段,还是建议将电子邮件 + user_ids 存储在 mongodb 上的单独集合中,或者通常如何处理此类事情?
解决方案
您可以使用Project Fields to Return from Query
从您的响应中排除密码字段。
db.users.find( { email: "user@email.com" }, { password: 0} )
推荐阅读
- javascript - 在 http get 中传递对象时出现问题
- c# - 如何在没有 SQL 的情况下在 C# 中将类用作 DataGridView 的数据库?
- python - Numpy 将 10 个基数转换为 10 个大小的数组中的位标志
- django - 我想获得 django 休息选择键而不是值
- python - Python 中的 Bland-Altman 统计
- c++ - 带有 Unity 客户端的 C++ GamerServer 库
- javascript - 如何从员工换班nodejs mongodb制作插槽
- mysql - mySQL 将两个 INNER JOIN 分组
- bash - 如何在同一行打印一个数组
- python - Python cv2 将帧发送到 React 客户端