我们如何分离管理员和用户的路线?

Sha*_*mar 0 javascript mongodb node.js express reactjs

我在node js. 我正在为仪表板创建路线。

  1. 用户登录并获取JWT token.
  2. 通过发送令牌,用户可以访问一些与用户相关的路由(编辑、删除、注销路由等)。
  3. 但是对于管理员,我想创建可以查看用户列表、编辑或删除用户、检查用户注销时间的路由。我还在表中设置了标志来标识此人是用户还是管理员。

如何验证后端管理员的路由?

Moh*_*deh 5

你可以从这个逻辑中得到启发,这里不再做进一步的解释。按照步骤操作(可能会有所帮助):

首先)role字段定义为DB mongoDBMysql(例如):

enum: ['user', 'admin']
Run Code Online (Sandbox Code Playgroud)

第二)checkRole(role)在登录后创建一个检查角色的函数并验证jwt,然后获取用户

第三)为管理面板创建单独的路由(例如):

router.route('/admin-panel').use(authController.checkRole('admin'))
Run Code Online (Sandbox Code Playgroud)