【问题标题】:Blazor Navigation Manager / AuthenticationBlazor 导航管理器/身份验证
【发布时间】:2022-01-02 01:19:57
【问题描述】:

我正在使用 Blazor 身份验证并搭建了登录页面。当用户未通过身份验证时,我希望在布局页面上重定向到它,但幸运的是它不起作用。

这是我的代码:

[Inject] private NavigationManager nav { get; set; }
    protected override async Task OnInitializedAsync()
    {
        var authState = await auth.GetAuthenticationStateAsync();
        var user = authState.User;
        if (!user.Identity.IsAuthenticated)
        {
            nav.NavigateTo("/Identity/Account/Login");
        }
    }

实际发生的是 Blazor 认为该页面不存在并呈现 NotFound:<p>Sorry, there's nothing at this address.</p>.

这就是说;没有做任何其他事情,当我刷新页面时,它实际上打开了登录页面。这对我来说没有意义。

谁能帮我理解这里发生了什么。

问候,

克里斯

【问题讨论】:

    标签: authentication redirect blazor


    【解决方案1】:

    您应该使用authorize page attribute。如果将其添加到页面,则 blazor 框架将重定向到登录页面。

    它是 Blazor WASM 应用吗?

    【讨论】:

      猜你喜欢
      • 2021-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-22
      • 2021-11-05
      • 2020-02-27
      • 2020-11-02
      • 1970-01-01
      相关资源
      最近更新 更多