NetCore-跨域配置(CORS Configuration)
第一步:配置Program.cs,注册跨域服务
builder.Services.AddCors(options => //添加中间件跨域服务 { options.AddPolicy("cors", p =>//添加策略,可以添加多种 { //如果是允许指定的域、方法、消息头需要使用WithOrigins、WithMethods、WithHeaders方法。 p.AllowAnyOrigin()//允许可以,参数可以给ip,不给表示允许所有 .AllowAnyMethod() //允许所有方法 .AllowAnyHeader();//请求头 }); });
方案二:允许指定的域名跨域
builder.Services.AddCors(delegate (CorsOptions options) { options.AddPolicy("CorsPolicy", delegate (CorsPolicyBuilder corsBuilder) { //指定url跨域 corsBuilder.WithOrigins(builder.Configuration.GetValue<string>("Cors").Split(',')); //默认跨域 corsBuilder.SetIsOriginAllowed((string _) => true).AllowAnyMethod().AllowAnyHeader() .AllowCredentials(); }); });
第二步:启用跨域服务,必须放跳转:app.UseHttpsRedirection();的后面
//启用策略中间件管道 app.UseCors("cors");