我最近才开始制作《Blazor》。我试图添加身份验证过程到我的Blazor应用程序。oidc身份验证添加在program.cs中:
builder.services.addOidcAuthentication(
options =>{
builder.Configuration.Bind("oidc", options.ProviderOptions);
}
);
在appsettings中传递我的参数:
{
"oidc" : {
...
RediectUri :"https://mysite/project"
}
在"https://mysite/project"将是我的应用程序的索引页。我能够连接到服务器,并与我的登录身份验证。但是,它只能被重定向到索引页。我确实在页面下有其他页面,但如果我试图将其重定向到"https://mysite/project/pagename",总是得到404。
On。. NET 7 Blazor WASM app您可以使用:
返回到引用的页面RedirectToLogin.razor
@inject NavigationManager Navigation
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication
@using Microsoft.Extensions.Options
@inject IOptionsSnapshot<RemoteAuthenticationOptions<ApiAuthorizationProviderOptions>> Options
@code {
protected override void OnInitialized()
{
Navigation.NavigateToLogin(Options.Get(Microsoft.Extensions.Options.Options.DefaultName).AuthenticationPaths.LogInPath);
}
}
见原文:https://github.com/aspnet/Announcements/issues/497#issue-1414759756