首页 > 解决方案 > 在 WebAssembly 中触发登录操作时发送附加查询字符串

问题描述

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

有没有办法添加这个附加字段,以便它与现有的查询字符串参数(如 returnUrl)一起进入身份提供者?

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

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

标签: asp.net-coreopenid-connectblazor-webassembly

解决方案


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

我通过创建一个从OidcProviderOptions扩展的新Auth0ProviderOptions并定义.extraQueryParams


推荐阅读