如何在 node.js 中显示仅限管理员的链接
How do I show admin-only links in node.js?
对不起,如果这是一个新手问题,但它在这里:
我希望管理员(登录网站时)查看非管理员登录时无法查看的链接。我什至不知道如何开始。我知道我必须在路由.js文件中添加两个单独的路由。但是不确定如何在 UI 中显示它,或者我什至是否正确。
这个回购似乎与我的问题有些相关。 https://github.com/angular-ui/ui-router#get-started
谢谢
因此,创建管理页面的最佳方法(使用角度)是在 express 或 node 内的 API 上限制它们。
幸运的是,有一个套餐!Passport是一个节点模块,不仅可以进行常规登录,还可以进行Google,Facebook和许多其他登录。
我会看一下中间件示例,然后在您的路线中您可以做一些简单的事情:
app.get('/admin', isAdmin ,function(req,res){
res.send('Secret Admin Things')
});
isadmin
将在哪里一次性检查他们是否是管理员!为此提供了惊人的教程。
我从事的项目没有使用护照,这就是他们所做的
在后端
res.locals = {
auth: req.session.auth,
}
res.render('index');
然后在前端
.HTML:
<span id="admin"> </span>
JavaScript:
if('{{auth}}' == admin){
menu = "<a href='/admin/users'> Admin: Users </a>"
$('#admin').append(menu)
}
然后为了确保有人无法查看代码以找到链接并转到它,您当然要保护后端
if (req.session.auth !== 'admin') { //
res.redirect('/');
}
如果您使用并了解角度和护照,其他答案很棒。但是,并不是每个人都使用相同的库,所以如果你只使用express和JQuery,这个选项将帮助你入门。就您想要执行的安全检查等而言,代码还有很多,但这是基本方法
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 如何使用jQuery自动打开页面上的所有链接
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- jquery动画可以通过编程链接吗
- 在单击href链接的同时下载文件
- 尽管链接成功并已成功下载,但未找到NPM模块
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- ReactJS映射:如何仅在url变量不为空时呈现html链接
- 单击页面上的链接后高度发生变化
- 将纯文本URL转换为可单击链接
- python-selenium-点击上升链接
- 一点javascript元编程&可链接的设置器
- ng视图外的链接重定向到ng视图内的页面
- 如何调用“;链接_;在onclick事件上使用Javascript
- 链接所有<a>Meteor
- 如何在Angular中的表的所有单元格中添加链接
- 通过链接重定向不;我不在jstree中工作
- 根据选项卡内部的文本链接中的哈希ID动态选择jqueryUI选项卡
- Facebook共享链接适用于用户,但不适用于粉丝页面管理员
- 如何在 node.js 中显示仅限管理员的链接