在 WebAssembly 中触发登录操作时发送额外的查询字符串

Sending additional query string when triggering a sign-in operation in WebAssembly

我正在使用最新的 Blazor WebAssembly 3.2.0 构建一个 webassembly 应用程序。我正在使用 Auth0 作为身份提供者,我需要在触发登录操作时传递附加参数(电子邮件地址)以及 OidcProviderOptions 中定义的必需参数。

有什么方法可以添加这个附加字段,以便它与现有的查询字符串参数(例如 returnUrl)一起转到身份提供者?

想法是身份提供者将读取这个额外的查询(电子邮件地址)并在生成登录屏幕时填充用户 ID 字段。 我正在使用以下扩展来注册提供商

builder.Services.AddOidcAuthentication(options =>
            {
                builder.Configuration.Bind("Local", options.ProviderOptions);
            })

这个问题听起来很像我在 dotnet/aspnetcore 上的问题:WebAssembly.Authentication - Not possible to define "Audience"

我通过创建一个新的 Auth0ProviderOptions 来解决这个问题,它从 OidcProviderOptions 扩展并定义 extraQueryParams.