Blazor Wasm 身份验证

Posted

技术标签:

【中文标题】Blazor Wasm 身份验证【英文标题】:Blazor Wasm Authentication 【发布时间】:2021-11-05 15:24:37 【问题描述】:

我正在尝试构建一个 blazor wasm 应用程序并尝试使用 Jwt 令牌进行身份验证。我面临一个有趣的问题。当我登录时,我无法访问具有 [Authorize] 属性的页面。但刷新页面后,身份验证工作。问题可能出在哪里?

【问题讨论】:

【参考方案1】:

我已经找到了问题所在。在您进行登录操作时,您需要强制加载。如果不强制加载 AuthenticationStateProvider 不会刷新。

async Task Login()
    
        var token = await AuthenticationUseCases.LoginAsync(userViewModel.UserName, userViewModel.Password);
        if (string.IsNullOrWhiteSpace(token))
        
            NotificationMessage message = new NotificationMessage  Severity = NotificationSeverity.Error, Summary = "Info Summary", Detail = "Info Detail", Duration = 4000 ;
            NotificationService.Notify(message);
        
        else
            NavigationManager.NavigateTo("/", true); //true means force load
    

【讨论】:

以上是关于Blazor Wasm 身份验证的主要内容,如果未能解决你的问题,请参考以下文章