2017-03-01 110 views

回答

2

它的工作原理是这样的:

acl.allow([{ 
    roles : ['admin'], 
    allows : [ 
    { resources: '/admin', permissions: '*' }, 
    ] 
}]); 

与具有中间件结合只看URL的第一部分:

app.use('/admin', acl.middleware(1), ... }); 

这基本上实现了一个检查,允许角色admin访问任何pref xed by /admin

+0

我不是使用中间件,而是isAllowed函数,但现在知道了,在资源中没有正则表达式,我只会切断我的请求url,谢谢 –

+0

如果你使用'app.use('/ admin',...)'',你也可以使用['req.baseUrl'](http://expressjs.com/en/4x/api.html#req.baseUrl),它是'/ admin'。 – robertklep

+0

谢谢你,那更好 –