ASP.NET Mac VS 中的核心 3.1 CORS 错误
ASP.NET Core 3.1 CORS error in VS for Mac
最初,我开始在 PC 上开发我的项目,现在我正尝试 运行 在 Mac 上开发它。当我的前端尝试访问我的网络 API 端点时,我收到以下错误:
Failed to load resource: Origin https://localhost:3000 is not allowed by Access-Control-Allow-Origin
问题是它在 Windows 上完美运行,但在 Mac 上不起作用。
我启用 CORS 的代码:
builder.UseCors(x => x
.WithOrigins(new string[] { "https://localhost:3000" })
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
如何解决这个问题?
在你的 startup.cs 的“ConfigureServices”中添加这个(它与你的语法不同):
services.AddCors(o => o.AddPolicy("AllowSpecificOrigins", builder =>
{
builder..WithOrigins("https://localhost:3000")
.AllowAnyMethod()
.AllowAnyHeader();
}));
在“配置”中将您的更改为:
app.UseCors("AllowSpecificOrigins");
并将其放在 UseRouting 之后 UseAuthorization 之前。
同时从所有控制器操作中删除所有 Cors 属性。
好吧,事实证明我不得不“信任”由 dotnet core 命令创建的开发证书。我从浏览器 (https://localhost:44372) 打开我的后端 URL,当出现“站点不安全”提示时单击“继续”,然后才打开我的前端 (https://localhost:3000)能够达到它。
最初,我开始在 PC 上开发我的项目,现在我正尝试 运行 在 Mac 上开发它。当我的前端尝试访问我的网络 API 端点时,我收到以下错误:
Failed to load resource: Origin https://localhost:3000 is not allowed by Access-Control-Allow-Origin
问题是它在 Windows 上完美运行,但在 Mac 上不起作用。
我启用 CORS 的代码:
builder.UseCors(x => x
.WithOrigins(new string[] { "https://localhost:3000" })
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
如何解决这个问题?
在你的 startup.cs 的“ConfigureServices”中添加这个(它与你的语法不同):
services.AddCors(o => o.AddPolicy("AllowSpecificOrigins", builder =>
{
builder..WithOrigins("https://localhost:3000")
.AllowAnyMethod()
.AllowAnyHeader();
}));
在“配置”中将您的更改为:
app.UseCors("AllowSpecificOrigins");
并将其放在 UseRouting 之后 UseAuthorization 之前。
同时从所有控制器操作中删除所有 Cors 属性。
好吧,事实证明我不得不“信任”由 dotnet core 命令创建的开发证书。我从浏览器 (https://localhost:44372) 打开我的后端 URL,当出现“站点不安全”提示时单击“继续”,然后才打开我的前端 (https://localhost:3000)能够达到它。