Automatische Anmeldung im NET 8 Blazor-Projekt mit .NET-IdentitätsauthentifizierungC#

Ein Treffpunkt für C#-Programmierer
Guest
 Automatische Anmeldung im NET 8 Blazor-Projekt mit .NET-Identitätsauthentifizierung

Post by Guest »

Ich arbeite an einem .NET 8 Blazor-Projekt mit .NET-Identitätsauthentifizierung. Mein Ziel ist es, den Benutzer automatisch anzumelden und ihn innerhalb der OnInitializedAsync-Methode basierend auf einem über einen Abfrageparameter bereitgestellten OTP umzuleiten.
Hier ist der Codeausschnitt:

Code: Select all

[SupplyParameterFromQuery]
private string Otp { get; set; } = default!;

[Inject]
SignInManager SignInManager { get; set; } = default!;

protected override async Task OnInitializedAsync()
{
try
{
if (HttpMethods.IsGet(HttpContext.Request.Method))
{
await HttpContext.SignOutAsync(IdentityConstants.ExternalScheme);
}

if (!string.IsNullOrEmpty(Otp))
{
// Validate and get the user and claims
await SignInManager.SignInWithClaimsAsync(user, isPersistent: false, claims);
NavigationManager.NavigateTo("/test");
}
else
{
NavigationManager.NavigateTo("/error");
}

await base.OnInitializedAsync();
}
catch (Exception)
{
NavigationManager.NavigateTo("/error");
}
}
Beim Versuch, den Benutzer umzuleiten, tritt jedoch die folgende Ausnahme auf:

Code: Select all

Microsoft.AspNetCore.Components.NavigationException: 'Exception of type 'Microsoft.AspNetCore.Components.NavigationException' was thrown.'
Wie kann ich mit dieser Ausnahme umgehen oder meinen Ansatz ändern, um die gewünschte Funktionalität zu erreichen, ohne dass Fehler auftreten?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post