跨域请求
同源策略:出于对客户访问安全的考虑,浏览器会阻止网页向其他网站发送请求,此限制称为同源策略
跨域请求:需要读取其他网站中的数据,需要其他网站对开发者的应用允许进行跨域请求,如在APP调用第三方API接口。
第1步、注册CORS配置服务。在Startup类ConfigureServices方法中调用AddCors()方法添加跨域策略
public void ConfigureServices(IServiceCollection services)
{
#region 跨域请求一
//注册跨域服务
services.AddCors(corsOptions =>
{
//添加跨域策略
corsOptions.AddPolicy("cors", buidler =>
{
//buidlerr对象设置cors策略选项:
//AllowAnyOrigin()允许所有来源请求,不安全;WithOrigins()允许特定来源的CORS请求
//AllowAnyHeader()允许任何请求标头;WithHeaders()允许在CORS请求中发送特定标头
//AllowAnyMethod()允许任何HTTP方法
//AllowCredentials()允许所有来源跨域请求中的凭据
//允许特定来源域、允许所有请求头、允许所有的请求方法
buidler.WithOrigins("http://localhost:8080",
"http://localhost:8081").AllowAnyHeader().AllowAnyMethod();
});
});
}
第2步、启用CORS中间件。在Startup类Configure 方法中通过CORS中间件将CORS策略应用到所有应用终结点
#region 第二 启用跨域请求,指定策略名字
app.UseCors("cors");
#endregion