netcore3.1设置可跨域

跨域问题的出现,简而言之就是基于浏览器同源策略而反馈出来的一种安全机制,是前端开发调用中出现的一种十分常见的问题,且解决方法有多种,比如采用Nginx做代理服务器,或者在前端使用自己的代理服务器,或者是直接在后端设置允许跨域,这里采用的是最后一种解决手段。

Startup

Startup类里先定义一个全局变量:

readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";//名字随便起

ConfigureServices

ConfigureServices方法里写如下代码:

/*请输入您需要格式化的代码*/
services.AddCors(options =>
{
  options.AddPolicy(MyAllowSpecificOrigins
    , builder => builder.AllowAnyOrigin()
    .WithMethods("GET", "POST", "HEAD", "PUT", "DELETE", "OPTIONS")
  );
});

Configure

Configure方法里添加中间件:

 app.UseCors(MyAllowSpecificOrigins);

CORS 中间件必须配置为在对 UseRouting 和 UseEndpoints的调用之间执行。 配置不正确将导致中间件停止正常运行。

posted @ 2020-05-13 13:50  少年。  阅读(849)  评论(0)    收藏  举报