node.js - 使用 Express JS Router 根据用户角色进行路由

标签 node.js express

我想根据用户的角色为同一路线调用两个函数之一。

路线:/api/users

用户角色:1) Admin(经过身份验证)和 2) 其他(收集用户是否经过身份验证的所有其他用户角色)

场景 1 如果用户具有 Admin 角色,则其路由 /api/usersGET 请求应由名为 getAllUsers() 的函数提供>

场景 2 如果用户具有 Others 角色,他的 GET 路由 /api/users 请求应由名为 getLimitedUsers() 的函数提供>

使用 ExpressJS Router 会是什么样子? ?

最佳答案

router.get('/api/users', function(req, res, next){

    if(user.isAdmin) {
        getAllUsers(req, res, next);
    }else{
        getLimitedUsers(req, res, next);
    }

});

function getLimitedUsers(req, res, next){

}

function getAllUsers(req, res, next){

}

关于node.js - 使用 Express JS Router 根据用户角色进行路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30605435/

相关文章:

node.js - NPM :Cannot find module 'bcrypt'

javascript - 显示来自 mongodb 的所有数据并在 doT.js 模板引擎中渲染它

node.js - 将 Redis 用于 session 存储似乎不起作用

node.js - CentOS 7 上的 Spectron headless 测试不起作用

node.js - 使用Backbone.js框架如何进行ajax调用快速路由

来自 Express+Handlebars layout.hbs 的 Cordova index.html?

javascript - Node JS : Validate certificate in DER format

node.js - Express:使用 websocket 共享 session

javascript - 如何在 next.js 中使用 supertest 测试快速服务器?

node.js - Typescript Express 项目中的客户端 Javascript