.NET Core3.1 跨域 Cors 找不到 “Access-Control-Allow-Origin”
今天在做项目的时候遇到了调用WebAPI跨域的问题 No 'Access-Control-Allow-Origin' header is present on the requested resource.,在此做个记录。
官方文档解释:https://docs.microsoft.com/zh-cn/aspnet/core/security/cors?view=aspnetcore-3.1
.NET core 3.1
解决方法:在Startup.cs中配置跨域
先引用Nuget包:Microsoft.AspNet.WebApi.Cors
然后在ConfigureServices方法中新增下面语句:
//配置跨域访问问题
services.AddCors(
options => options.AddPolicy("CorsTest",
p => p.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod()
)
);
在Configure方法中新增下面语句:
app.UseCors("CorsTest");//其中app.UseCors()必须放在app.UseRouting()和app.UseEndpoints之间,不然还是解决不了问题。
完美解决问题!