protected virtual Task DefaultRedirectToIdentityProvider(RedirectToIdentityProviderNotification <OpenIdConnectMessage, OpenIdConnectAuthenticationOptions> context) { // In order to support multi site we change the return uri based on the current request // For example https://your-first-site/vipps-login or https://your-second-site/vipps-login context.ProtocolMessage.RedirectUri = GetMultiSiteRedirectUri(context.ProtocolMessage.RedirectUri, context.Request); AvoidRedirectLoop(context); // XHR requests cannot handle redirects to a login screen, return 401 if (context.OwinContext.Response.StatusCode == 401 && VippsHelpers.IsXhrRequest(context.OwinContext.Request)) { context.HandleResponse(); } return(Task.FromResult(0)); }
protected virtual string GetMultiSiteRedirectUri(string currentRedirectUri, IOwinRequest request) { return(VippsHelpers.GetMultiSiteRedirectUri(currentRedirectUri, request)); }