public Task CompleteAuthenticationAsync(string url, InteractionType interactionType)
        {
            return(HandleErrors(nameof(CompleteAuthenticationAsync), async() =>
            {
                await InitAsync(true); //Needed for redirect callback

                var userState = await OidcClient.ParseResponse(url);

                await UpdateUserState(userState, true, true);

                if (interactionType == InteractionType.Popup)
                {
                    if (Settings.PostAuthenticationPopup != null)
                    {
                        await Settings.PostAuthenticationPopup(userState.User, userState.OidcRequestState.Data, ServiceProvider);
                    }
                }
                else
                {
                    if (Settings.PostAuthenticationRedirect != null)
                    {
                        await Settings.PostAuthenticationRedirect(userState.User, userState.OidcRequestState.Data, ServiceProvider);
                    }
                }
            }));
        }
示例#2
0
        public Task CompleteAuthenticationAsync(string url)
        {
            return(HandleErrors(nameof(CompleteAuthenticationAsync), async() =>
            {
                await InitAsync(true); //Needed for redirect callback

                var userState = await OidcClient.ParseResponse(url);

                await UpdateUserState(userState, true, true);
            }));
        }