即使启用了 CORS,Web Api 也会始终抛出 403 错误

WebApi throws 403 error always even whith CORS enabled

我有一个在 .NET Core 2.0 中为我的后端开发的 WebApi。当我测试我的生产构建时,我无法从我的控制器调用方法,我已经激活了 cors 以允许一切仅用于测试目的。当我构建我的 WebApi 开发环境时,它工作得很好。

这就是我的创业公司 class

public void ConfigureProduction(IApplicationBuilder app, IHostingEnvironment env)
    {
        app.UseForwardedHeaders(new ForwardedHeadersOptions
        {
            ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto
        });

        //var options = new RewriteOptions()
        //    .AddRedirectToHttps();

        //app.UseRewriter(options);

        app.UseDeveloperExceptionPage();

        app.UseCors(builder => {
            builder.AllowAnyOrigin();
            builder.AllowAnyMethod();
            builder.AllowAnyHeader();
        });

        app.UseMvc();
    }

此外,您需要允许凭据:

  • API

    app.UseCors(builder =>
    {
        builder.AllowAnyOrigin();
        builder.AllowAnyMethod();
        builder.AllowAnyHeader();
        builder.AllowCredentials(); // <-- add this line
    });
    
  • Client

    let requestOptions = new RequestOptions({withCredentials: true});