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");
posted @ 2024-01-05 13:46  microsoft-zhcn  阅读(234)  评论(0编辑  收藏  举报