.net core web api实现跨域
电脑版发表于:2021/2/20 10:11
跨域的配置写在api的项目里
一.允许任何来源
1.在Startup.cs类的ConfigureServices方法中添加srevices.AddCors服务
services.AddCors(options => {
options.AddPolicy("any",
builder => {builder.AllowAnyOrigin() //允许任何来源的主机访问
.AllowAnyMethod()//允许任何方法访问
.AllowAnyHeader();//允许任何标头
});
});2.在Startup.cs类的Configure方法中注册服务
app.UseCors("any");
二.允许特定的ip访问
1.在Startup.cs类的ConfigureServices方法中添加srevices.AddCors服务
services.AddCors(options => options.AddPolicy("any", policy =>
{
// 设定允许跨域的来源,有多个可以用','隔开
policy.WithOrigins("http://localhost:21632", "http://localhost:24661")
.AllowAnyHeader()//允许任何标头
.AllowAnyMethod()//允许任何方法访问
.AllowCredentials();//允许凭据的策略
}));2.在Startup.cs类的Configure方法中注册服务
app.UseCors("any");
三.使用属性启动Cors
1.在接口上添加[EnableCors]属性

2.在Startup.cs类的ConfigureServices方法中添加srevices.AddCors服务
services.AddCors(options =>
{
options.AddPolicy("any",
builder =>
{
builder.WithOrigins("http://localhost:51345",
"http://localhost:24661");
});
options.AddPolicy("AnotherPolicy",
builder =>
{
builder.WithOrigins("http://www.contoso.com")
.AllowAnyHeader()
.AllowAnyMethod();
});
});3.在Startup.cs类的Configure方法中注册服务
app.UseCors();

