Angular2中的Oidc-client与hashlocation在redirect_uri

时间:2018-02-22 16:53:42

标签: angular identityserver3 oidc-client-js

我正在关注Authenticating Angular2 with Oidc-client并尝试实施身份验证部分。因为angular2正在使用

{ provide: LocationStrategy, useClass: HashLocationStrategy }

我的网址将更改为例如:http://localhost:4200/#/dashboard

在身份服务器和客户端,我使用redirect_uri作为

http://localhost:4200/dashboard

但是在提供用户名和密码后,页面会重定向到http://localhost:4200/#/id_token并被视为无效路由。

在角度应用程序中使用hashlocationstrategy以及如何配置身份服务器时,有人可以帮助解决这个问题吗?

由于

1 个答案:

答案 0 :(得分:0)

oidc-client库进程通过查找网址中的最后一个哈希分隔符来登录响应

https://github.com/IdentityModel/oidc-client-js/blob/c6d76a557626d67e3848b7858cc66787bc77928b/src/SigninResponse.js#L11

因此,您的重定向通常应配置为http://localhost:4200/#/RedirectRouteName#

${window.location.origin}${window.location.pathname}#/RedirectRouteName#