.net core 3.1 webapi 跨域设置

原因:跨域是因为浏览器的同源策略所导致的。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。浏览器引入同源策略主要是为了防止XSS,CSRF攻击。

找到Startup.cs 

定义一个变量 

 private readonly string AllowCors = "AllowCors";

然后在ConfigureServices方法中增加以下代码

      
       //在AddControllers 之前添加
       #region
跨域 services.AddCors(options => { options.AddPolicy(AllowCors, builder => { builder.AllowAnyMethod() .AllowAnyOrigin() .AllowAnyHeader(); }); }); #endregion

最后在Configure 方法中 添加如下代码

            app.UseRouting();
       //在UseRouting之后,Endpoints之前,添加如下代码
            app.UseCors(AllowCors);

         app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });

 

posted @ 2020-09-10 17:40  srsly  阅读(371)  评论(0编辑  收藏  举报