我試着去限制到只有用戶其角色的路線都是admin流星:限制管理員僅路由到管理角色
Router.route('/admin', {
if(Roles.userIsInRole(Meteor.user(), ['admin'])) {
template: 'admin' };
else
template: 'restricted'
});
有意外的標記
我試着去限制到只有用戶其角色的路線都是admin流星:限制管理員僅路由到管理角色
Router.route('/admin', {
if(Roles.userIsInRole(Meteor.user(), ['admin'])) {
template: 'admin' };
else
template: 'restricted'
});
有意外的標記
的template
鐵路由器選項返回是很簡單當你只需要路由到一個恆定的模板時,這種情況永遠不會改變,也不需要任何特定的參數。
如果您的路線更加複雜(例如根據當前用戶的角色返回不同的模板時),則必須使用action
路由器選項。
請注意,如果您正在使用Iron Router,新的語法是Router.route('/path', actionFunction)
設法得到它的工作多虧ghybs的建議。香港專業教育學院更新,以
Router.route('/admin', {
action: function() {
if(Roles.userIsInRole(Meteor.user(), ['admin'])) {
this.render('admin') }
else
this.render('denied')
}
});
如果有人能提供更緊密的&安全代碼,請不要輸入:d感謝
感謝的是,我的代碼的更新,它的工作原理。我想知道它是否足夠安全 – Farhan
爲了提高「安全性」,通常的技巧是用「{{#if isInRole」admin「}}」來包裝您的受保護模板內容(參見[使用示例](https:// github .com/alanning/meteor-roles#usage-examples)),即使您事先檢查用戶的角色。 – ghybs
我已經實現了,認爲它太簡單了,沒有足夠的保證哈哈。我想閱讀更多的潛艇和發佈因爲即時通訊仍然在學習,並有自動發佈和不安全 – Farhan