首页 新闻 搜索 专区 学院

netcore3.1 WebApi独立运行跨域设置无效

0
悬赏园豆:10 [已解决问题] 解决于 2020-10-26 11:24

.netcore3.1 webApi项目,前端调用webapi时提示的跨域阻止,在IIS托管站点时,通过设置iis响应头参数,可以解决。

但是webapi.exe独立运行时,在程序中通过AddCore(),无论怎么设置都没有生效,不知道是什么原因?

1、在ConfigureServices中配置

2、在Configure中配置

Code_Song的主页 Code_Song | 初学一级 | 园豆:49
提问于:2020-08-07 15:22
< >
分享
最佳答案
1

  定义一个全局的AllowSpecificOrigin

private readonly string AllowSpecificOrigin = "AllowSpecificOrigin";
  • 1、在ConfigureServices中配置
//设置允许所有来源跨域
            services.AddCors(options => options.AddPolicy(AllowSpecificOrigin,
            builder =>
            {
                builder.AllowAnyMethod()
                    .AllowAnyHeader()
                    .SetIsOriginAllowed(_ => true) // =AllowAnyOrigin()
                    .AllowCredentials();
            }));
  • 2、在Configure中配置
//CORS 中间件必须配置为在对 UseRouting 和 UseEndpoints的调用之间执行。 配置不正确将导致中间件停止正常运行。
            app.UseCors(AllowSpecificOrigin);

  希望能够帮到您!

  更多关于.net core的内容请看《.NET Core 跨平台》

收获园豆:10
戎"码"一生 | 小虾三级 |园豆:510 | 2020-08-07 21:42
其他回答(1)
0

跨域设置本身没有问题,是因为代码里其他的配置导致跨域没有生效

Code_Song | 园豆:49 (初学一级) | 2020-08-13 11:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册