【发布时间】:2017-03-22 07:55:09
【问题描述】:
我有一个 canActivate Guard,它检查 URL 中的 jwt 令牌并将其保存为 cookie(随后将检查 cookie)。如果没有令牌,则页面将重定向到另一个允许用户登录并创建 jwt 的应用程序。
当我向后导航时,我会得到一个类似的 URL:
http://localhost:3000/?jwt=...
AppModule 执行以下操作:
RouterModule.forRoot([{path: "**", redirectTo: "/import", pathMatch: "full"}], {useHash: true})
然后在ImportModule:
RouterModule.forChild([
{ path: "import", component: ImportComponent, canActivate: [ImportGuard] }
])
问题是我可以看到 URL 从 localhost:3000/?jwt=... 更改为 localhost:3000/#/import 并且参数丢失了,所以当我检查它时它不存在。
我是 Angular2 的新手,几乎可以肯定做错了什么,但我正在努力寻找任何关于如何从外部 URL 获取参数的示例。
我无法更改外部服务以返回 URL /#/import?jwt=...,并且我觉得我不需要这样做,因为当前的实现已经与 ReactJS 一起工作,所以我觉得应该可以使用角度。
有什么建议吗?如果您需要更多信息,请告诉我。
谢谢
【问题讨论】:
标签: angular