我想使用来自身份服务器的PostLogoutRedirectUris来根据它请求的域重定向。我的客户页面是这样的: -
new Client
{
Enabled = true,
ClientName = "ClientA",
ClientId = "ClientId",
Flow = Flows.Implicit,
RequireConsent = false,
RedirectUris = new List<string>
{
"http://localhost:3001/callback"
},
RequireSignOutPrompt =false,
AllowedCorsOrigins = new List<string>
{
"http://localhost:3001/"
},
PostLogoutRedirectUris=new List<string>
{
"http://localhost:3001/logout",
"http://localhost:3002/logout"
},
AllowedScopes = new List<string>
{
"openid",
"profile",
"email",
},
},
现在如何根据reactsjs中的请求处理PostLogoutRedirectUris中的多个字符串?需要从rectajs UI传递什么?请帮助我。
答案 0 :(得分:1)
不确定你在问什么。但是,要注销,您需要调用endsession端点,传递id令牌并将注销重定向URL作为参数发布。
/connect/endsession?id_token_hint={id token}&post_logout_redirect_uri=http://localhost:3001/logout
其中{id token}是在调用/connect/authorize endpoint.
时从身份服务器返回的ID令牌您应该能够根据您所在的域设置post_logout_redirect_uri
。
请参阅此处的文档https://identityserver.github.io/Documentation/docsv2/endpoints/endSession.html
请注意,您必须重新发送一个ID令牌才能使重定向生效。我假设您已在EnablePostSignOutAutoRedirect
中将AuthenticationOptions
设置为true?