允许web api跨域访问,需要在StartUp的方法中添加跨域服务:
//StartUp的两个方法中
public void ConfigureServices(IServiceCollection services)
{
services.AddCors(options =>
{
//any为策略名称,后面在web api控制器中添加的跨域策略名称要与此一致
options.AddPolicy("any", builder =>
{
builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader();
});
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
//添加到app.UseRouting()和app.UseEndpoints()之间
app.UseCors();
}
WEB API控制器
[EnableCors("any")]
public class CategoryController : ControllerBase
{
}
EnableCors
特性也可以标注到方法上,指定仅该方法允许跨域访问。