javascript - 使用连接角色的 Node.js 角色授权

标签 javascript node.js express passport.js

我一直在关注 Connect Angular 色 https://github.com/ForbesLindesay/connect-roles 为了在我的 Node js 应用程序中获得授权,除此之外,所有事情都通过了 这是上面链接中记录的内容

user.can(action) and user.is(action)

Inside the views of an express application you may use user.can and user.is 

等同于 req.user.can 和 req.user.is

e.g.

<% if (user.can('impersonate')) { %>
  <button id="impersonate">Impersonate</button>
<% } %>

我尝试使用它,但我非常困惑,因为在我看来(我的 html 页面)我如何检查特定 Angular 色。我是否必须调用服务来检查服务器。因为我不能像在我的 app.js 文件中那样直接使用

var user = require('connect-roles');
user.use('access private page', function (req) {
  if (req.user.role ==== 'moderator') {
    return true;
  }});
app.get('/private', user.can('access private page'), function (req, res) {
  res.render('private');
});

最佳答案

如果您使用的是 Jade,它很简单:

if userCan('do something')
   button#special Do Something

关于javascript - 使用连接角色的 Node.js 角色授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18955246/

相关文章:

javascript - Json.data 未正确加载/显示

javascript - 如何不将点击事件传递给 react 中的 child ?

javascript getdisplaymedia 以更高分辨率记录

javascript - 编辑特定网站上的 url

javascript - 添加类以在右键单击时跨度并在右键单击另一个时将其删除

javascript - 如何读取我的 Node.js 应用程序中的 json 文件?

node.js - 为什么在 Node 中调用 mongoose Model.create 时不能链接 .catch

node.js - 使用 Mongoose 异步保存多个文档

node.js - Multer 和 express-validator 在验证中产生问题

node.js - 如何在 Express 中间件中接收 ZMQ 消息?