2016-12-30 59 views
1

我正在使用Auth0和Lock 10,并且在解决如何正确定制锁定方面遇到很多麻烦。如何使用Auth0和Angular 1锁定不同的页面?

在angular的配置阶段,lockProvider.init提供了“redirectUrl”参数,按照快速入门指南here

问题是我想将用户重定向到一个路由(我使用ui路由器),如果他们已经注册,并且另一个路由如果他们以前注册过,并且他们现在正在登录。

我不认为我可以在函数运行后更改lockProvider.init变量,并且redirectTo变量不在调用show()调出锁模式时可更改的选项列表中。

任何帮助将不胜感激......我觉得我必须有一些我在锁的理解中缺少的东西,因为我没有看到它如何用于任何事情而不仅仅是一个简单的登录窗口。

+0

'的问题是,我想将用户重定向到一个页面,如果他们已经签署了,而另一个页面,如果他们先前已经签约了,他们现在签约in' 你的意思是重定向到不同的路径' '或者像一个实际的页面home.html或profile.html? – kachhalimbu

+0

没错。更新 :) – P0lska

回答

0

假设您使用隐式授权流程来请求发送ID令牌,由锁定启动的身份验证过程的结果将触发authenticated事件,该事件表示您收到了所请求的ID令牌。这将在您配置的重定向网址上提供。

接收并验证此令牌后,您可以将已通过身份验证的用户重定向到您自己的应用程序中的任何路由。

如果您需要进行登录首次与经常性的用户来区分用户,你可以做到这一点有两种方法:

  • 包括ID令牌内的信息,通知你,如果用户是第一次用户(你可以看看使用Auth0 rules来实现这一点)。
  • 跟踪您自己的应用程序后端中的第一次使用用户,并在收到ID令牌后向您的后端发出请求,以了解这是否是第一次使用用户。

接收到的ID令牌将包含一个sub要求包含您可以用它来跟踪用户相关信息你自己的后端内一个独特的和稳定的用户标识符。

相关问题