node.js - Express.js:用户只访问他们创建的数据
问题描述
我在 Express.js 和 MongoDB 上苦苦挣扎。我已经配置了passport login和passport-jwt,它工作得很好,但是现在我有一个问题。例如,我有两个用户和一个表,我希望当第一个用户登录应用程序时,他们可以访问他们创建的数据。什么是最好的解决方案?每个用户创建一个表?帮帮我,我感谢你的帮助!
解决方案
您可以通过添加以下内容来更新将存储在表中的数据架构:
owner {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
而 user 将是创建为用户数据库的建模名称,因此该表中的每个数据都将具有其所有者的 id,并且每次您想要显示该数据或发送给用户时,您可以检查是否所有者的 id该数据的 id 等于已经登录的用户的 id,并且取决于您是否可以显示 table 的数据。
并且用户的 id 将存储在 req.user._id 中,这将由护照包创建。
推荐阅读
- amazon-web-services - 公开共享 AWS S3 文件
- c# - 如何根据单元格的值让超网格行具有不同的背景色?
- apm - 弹性云 APM 服务器 - 队列已满
- python - numpy 数组上的成对 t 检验
- angular - 无法在 mat-option 的自定义指令中侦听 keydown 事件
- python - Django DRF @permission_classes 不适用于 IsAdminUser 权限
- wordpress - 爬虫在 wordpress 网站上看到 ajax(动态)内容有什么可以做的吗?
- c# - 为什么 NLog 不发送电子邮件?
- c# - 绑定到 WPF 附加属性中的嵌套元素
- javascript - 如何向 useLazyQuery 添加回调