azure - 尝试调用 B2C 登录时出现 no-access-control-allow-origin

标签 azure react-redux asp.net-core-webapi azure-ad-b2c

我无法解决此错误,我有一个 .net core Web api,其中包含一个 React 应用程序(net core React 模板)

enter image description here

我还添加了cors:

      services.AddCors(options =>
        {
            options.AddPolicy("AllowMyOrigin",
            builder => builder.WithOrigins("https://localhost:44300")
            .AllowAnyHeader()
            .AllowAnyMethod()
            .AllowCredentials()
            );
        });

我尝试了多种方法,但无法克服这个错误。

我在网上找到了大量 Material 来尝试,但似乎没有任何效果,我觉得我错过了一些非常明显的东西?

有人能指出我正确的方向吗?

我希望应该有一个允许原始 header :

enter image description here

我还尝试使用 Mosif 浏览器扩展来打开 cors,这阻止了 cors 错误的显示,但现在我打开了 404 (notfound):

https://login.microsoftonline.com/tfp/domainname.onmicrosoft.com/b2c_1_sign_up/v2.0/.well-known/openid-configuration

最佳答案

您提到打开 openid-configuration 网址时出现 404 错误。这意味着您的部分配置不正确。 您必须能够在浏览器中打开此网址并取回 JSON 文档。将其复制到新选项卡并进行调整,直到返回结果。

请仔细检查您配置的策略和租户名称。完整的网址通常如下所示:

https://tenantname.b2clogin.com/tenantname.onmicrosoft.com/<policy-name>/v2.0/.well-known/openid-configuration
https://tenantname.b2clogin.com/tenantname.onmicrosoft.com/v2.0/.well-known/openid-configuration?p=<policy-name>
https://login.microsoftonline.com/tfp/tenantname.onmicrosoft.com/<policy-name>/v2.0/.well-known/openid-configuration

所有这些都同样有效,可以根据您的场景使用。

配置应该如下所示:

authentication.initialize({
    instance: 'https://tenantname.b2clogin.com/',
    tenant: 'tenantname.onmicrosoft.com',

另一个问题可能是,如果您的 B2C 租户很新,Microsoft could be blocking support for microsoftonline for your tenant 。在这种情况下,请尝试切换到 b2clogin.com 域作为您的实例。

在 Azure 门户中打开用户流时,您可以看到此 URL 的可能值。

作为旁注,我建议切换到不同的 react 库。您正在使用的那个并没有真正得到维护。我们目前正在使用https://github.com/syncweek-react-aad/react-aad

USer Flow

run now

关于azure - 尝试调用 B2C 登录时出现 no-access-control-allow-origin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62975275/

相关文章:

javascript - Windows Azure 和 JavaScript 多个Where子句

Azure Sql 数据库备份文件

javascript - 错误: Trying to print out array elements in React Function Component?

c# - 输入无效 .Net Core Web API

c# - 绑定(bind)属性 FromForm .NET Core Web API

c# - Azure Blob 存储 - 服务器无法对请求进行身份验证

powershell - Azure PowerShell 将无法连接

javascript - 如何在另一个对象数组中的备用位置添加对象?

javascript - React Redux Redux Form - 从 <Field> 内移动函数会产生错误

c# - 使用 ASP.NET Core Web API 在 Swashbuckle 6 (Swagger) 中重命名模型