由于CORS政策,ASP Net Web API阻止了请求

时间:2019-12-22 19:18:23

标签: asp.net-web-api cors

我正在尝试从我的角度应用程序向我的 ASP.NET Web API

发送一些请求

服务器,但由于 CORS政策而导致请求被阻止。

错误消息:

  

从源访问“ localhost:5000 / api / admins /”处的XMLHttpRequest   “ http://localhost:4200”已被CORS政策禁止:跨来源   仅协议方案支持请求:http,data,chrome,   chrome-extension,https。

我已经尝试允许任何主机,标头和方法,但问题仍然存在。

这是我的CORS政策:

public void ConfigureServices(IServiceCollection services)
{
    services.AddCors(options =>
    {
        options.AddPolicy(myAllowSpecificOrigins,
        builder =>
        {
            builder.AllowAnyOrigin();
            builder.AllowAnyHeader();
            builder.AllowAnyMethod();
        });
    });
    services.AddMvc(options => options.EnableEndpointRouting = false);
    services.AddControllers();
}

我的Angular应用程序在localhost:4200上运行,我的服务器在localhost:5000上运行。

我对任何建议都很满意。

1 个答案:

答案 0 :(得分:0)

我认为您已经为CORS策略完成了必要的配置,并在应用程序中添加了新策略myAllowSpecificOrigins,但还需要启用它才能使用

可以在Configure方法中启用

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    ...
    app.UseCors(myAllowSpecificOrigins); //use the policy added in ConfigureServices
    app.UseMvc();
}