首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用nodejs/express/mongoose/jwt验证来自不同模型的两个不同用户

使用nodejs/express/mongoose/jwt验证来自不同模型的两个不同用户
EN

Stack Overflow用户
提问于 2021-05-21 22:44:04
回答 2查看 67关注 0票数 0

我正在开发一个MERN应用程序,学生可以登录到填写他们的申请,管理用户(具有不同的角色),可以批准申请和做其他管理工作。因此,我决定为用户(学生和用户)使用两种不同的模型(mongoDB集合),因为学生有额外的数据需要存储在数据库中。身份验证的最佳方法是什么?那么构建路由的最佳方式是什么呢?

EN

回答 2

Stack Overflow用户

发布于 2021-05-21 22:46:41

只处理一个模型(用户)并添加一个角色字段会容易得多。因此,您只需查询一个集合,即可在登录过程中找到该用户。如果您将Express与JWT结合使用,则必须编写一些中间件来处理令牌,并将请求传递给处理程序或使用401中止它,您只需添加一些if语句来检查令牌有效负载中的角色是学生还是管理员

票数 0
EN

Stack Overflow用户

发布于 2021-05-21 22:51:24

首先给出你的场景,这很简单,当他们尝试登录时,使用一些复选框或某种机制来询问他们是作为用户登录还是作为学生登录,然后基于此运行您的登录逻辑。

但是,如果您只有一个用于身份验证的模型,例如用户,然后有一个字段user_role来控制他们的特权/授权,这将是非常有意义的。

对于路由,您可以有中间件来检查,根据user_role它们是否可以访问它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67639097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档