首页 > 解决方案 > CORS 错误 Azure 函数与 B2C - Blazor

问题描述

我有一个 Blazor 应用程序正在调用受 B2C 保护的 Azure 函数。如果直接从浏览器调用函数,我会被重定向到 B2C 登录,并且一旦通过身份验证,函数就会按预期返回 Json 对象。现在,如果我在 Blazor 应用程序中使用函数上的“允许匿名访问”进行调用,它可以工作。现在,当我将功能访问权限设置为“使用 Active Directory 登录”时,我得到以下信息: 在此处输入图像描述

我已将本地主机添加到函数 Cors:

在此处输入图像描述

不确定当我在 Blazor 中初始化连接时是否应该添加任何内容?PS。该应用程序可以很好地向 B2C 进行身份验证。

谢谢,迈克

标签: azure-functionsazure-ad-b2cblazor

解决方案


This CORS error occurs because you are accessing https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com endpoint

from https://localhost endpoint.

And we can not resolve this error due to the restriction from Azure B2C server side. (Azure AD or Azure AD B2C don't support CORS)

The workaround is

您从服务器端获取令牌,调用服务器中的函数,然后您的应用程序调用您的服务器。

参考:

Microsoft Online Auth 没有“Access-Control-Allow-Origin”标头


推荐阅读