刚开始使用Polymer 1.0。我的单页聚合物1.0应用程序有多个路由。
<paper-drawer-panel id="mainPanel" class="flex" >
<app-router id="router" class="flex" mode="pushstate">
<app-route path="/" element="page-landing"></app-route>
<app-route path="/user" element="page-user"></app-route>
<app-route path="/admin" element="page-admin"></app-route>
....// more <app-routes>
</app-router>
</paper-drawer-panel>
我想在着陆页<firebase-auth>
上使用<page-landing>
与 谷歌作为提供商 ;
在成功验证后,我想根据授权
导航至<app-route>
路径
<page-admin>
只有 ADMIN 才能看到<page-user>
任何已登录的用户都可以看到 Say <page-landing>
提供以管理员或用户身份登录的选项。
如何实施基于授权的路由?在所有<app-routes>
我需要检查用户是否已授权。任何人都可以指出实施这个的例子吗?
答案 0 :(得分:0)
看一下iron-meta来存储像isAuthorized
这样的全页状态。
为了区分安全页面和公共页面,您必须自己照顾。使用更改观察器作为页面路径或selecteditem或类似物。
关于身份验证和授权,运气不好,因为所有子页面都是通过html链接标记导入的,并且您无法附加任何标题。 但实际上这不是一个真正的问题。因为一般来说,您希望保护每个页面的数据而不是整个本身。并且html导入仅加载视图/页面模板,您仍然必须使用客户端数据填充它。这通常是您使用ajax调用请求,您可以正常提供auth-header。
希望这些描述可以帮助您找到自己的方式......