【问题标题】:CORS request error even thought it's enabled in the .Net Core back end即使在 .Net Core 后端启用了 CORS 请求错误
【发布时间】:2020-04-26 23:52:58
【问题描述】:

我有一个测试应用程序,我想发送一个请求并获取一个令牌,但是由于我的后端配置中的交叉请求错误,我无法获取它:

  public void ConfigureServices(IServiceCollection services)
    {


        services.AddCors(o => o.AddPolicy("MyPolicy", builder =>
        {
            builder.AllowAnyOrigin()
                   .AllowAnyMethod()
                   .AllowAnyHeader()
                   .AllowCredentials().WithOrigins("http://localhost:4200");
        }));

并在配置部分添加以下内容:

  public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {


        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        else
        {
            app.UseHsts();
        }
        app.UseAuthentication();

            app.UseCors("MyPolicy");

        app.UseMvc();
    }

但仍然收到错误消息:CORS 策略已阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头

【问题讨论】:

  • 删除后重试:.AllowCredentials().WithOrigins("http://localhost:4200");
  • @Hadi 我这样做了,还是不行,同样的错误
  • 所以请在startup.cs的“configure”方法中分享你的中间件。
  • @Hadi 用那个编辑了我的帖子
  • @moris62,由于其他问题,有时我在 asp.net-core + angular 项目中出现 CORS 错误。但实际上它工作正常。我在下面写了一个答案

标签: angular .net-core


【解决方案1】:

services.AddCors 放在ConfigureSevices 方法的顶部,然后以这种方式配置cors:

services.AddCors(o => o.AddPolicy("MyPolicy", builder =>
        {
             builder.AllowCredentials()
    .AllowAnyMethod()
    .AllowAnyHeader()
    .WithOrigins("http://localhost:4200", "https://localhost:4200");
        }));

Configure 方法中,也在方法顶部添加app.UseCors("MyPolicy");。这对我来说很好,但在我尝试了很多没有的变体之前。

【讨论】:

  • 我从原点 'localhost:4200' 获得对 XMLHttpRequest 的访问权限已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头.
  • 也尝试使用 https 进行配置,我编辑了我的答案
  • nfrom origin 'localhost:4200' 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求中不存在“Access-Control-Allow-Origin”标头资源。同样的错误真的很烦人
  • @moris62,好的,让我们尝试将此属性放在您的控制器之前并再次测试:[EnableCors("MyPolicy")]
  • 已经添加了,但是好像和那个没有关系,会不会是Angular方面的?
猜你喜欢
  • 2018-12-23
  • 2021-01-01
  • 2019-04-11
  • 2021-10-28
  • 2015-02-25
  • 1970-01-01
  • 1970-01-01
  • 2019-03-10
  • 2020-05-22
相关资源
最近更新 更多