IDE 版本:Visual Studio 2017 15.9.7
asp.net core 版本 2.1.1
本文档说明需在
asp.net core webAPI学习笔记(一)项目搭建
的基础下进行
Startup.cs中添加允许跨域代码
appsettiongs.json文件配置
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*" // 允许所有域名访问
}
// 获取appsettings.json配置信息
var config = new ConfigurationBuilder()
.SetBasePath(System.IO.Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json")
.Build();
var alloweHosts = config["AllowedHosts"]; // 获取允许跨域的域名配置
//配置跨域处理
services.AddCors(options =>
{
options.AddPolicy("cors", builder =>
{
builder.WithOrigins(alloweHosts) //允许指定域名访问
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();//指定处理cookie
});
});
在控制器或者action上添加跨域规则,如果在控制器上添加跨域规则,则整个控制器内的方法都允许跨域
同理,在action上添加跨域规则,则只有该action才允许跨域